Upcoming SlideShare
×

Wg qcolorable

384 views

Published on

Published in: Technology
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total views
384
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
4
0
Likes
0
Embeds 0
No embeds

No notes for slide

Wg qcolorable

1. 1. Parameterized Algorithms for the Max q-Colorable Induced Subgraph problem on Perfect Graphs Neeldhara Misra, Fahad Panolan, Ashutosh Rai, Venkatesh Raman, and Saket Saurabh
2. 2. The Problem Given a graph G, ﬁnd the largest subgraph that is q-colorable.
3. 3. The Problem Given a graph G, ﬁnd the largest subgraph that is 1-colorable.
4. 4. The Problem Given a graph G, ﬁnd the largest subgraph that is an independent set.
5. 5. The Problem Given a graph G, ﬁnd the largest subgraph that is 2-colorable.
6. 6. The Problem Given a graph G, ﬁnd the largest subgraph that is an induced bipartite subgraph.
7. 7. Our Motivation Yannakakis and Gavril [IPL 1987] showed that this problem is NP-complete even on split graphs if q is part of input, but gave an nO(q) algorithm on chordal graphs for ﬁxed q.
8. 8. Our Motivation Yannakakis and Gavril [IPL 1987] showed that this problem is NP-complete even on split graphs if q is part of input, but gave an nO(q) algorithm on chordal graphs for ﬁxed q. An immediate natural question is: What is the status of this question in parametrized complexity?
9. 9. Our Motivation Yannakakis and Gavril [IPL 1987] showed that this problem is NP-complete even on split graphs if q is part of input, but gave an nO(q) algorithm on chordal graphs for ﬁxed q. An immediate natural question is: What is the status of this question in parametrized complexity? In other words: Does this problem have an algorithm with running time f(q) · p(n) or f(q, ℓ) · p(n, q)? Here ℓ is the size of the subgraph we are looking for.
10. 10. We ﬁrst present a randomized algorithm with running time: f(ℓ) · [Time to enumerate maximal independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ.
11. 11. We ﬁrst present a randomized algorithm with running time: f(ℓ) · [Time to enumerate maximal independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ.
12. 12. We ﬁrst present a randomized algorithm with running time: f(ℓ) · [Time to enumerate maximal independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ. Notice that we do not expect an algorithm with running time: f(ℓ) · p(n, q), since the problem is W[1]-hard on general graphs even when q = 1.
13. 13. We ﬁrst present a randomized algorithm with running time: f(ℓ) · [Time to enumerate maximal independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ. This algorithm is reasonable for graph classes where maximal independent sets can be enumerated efﬁciently, for example, co-chordal and split graphs. The problem remains NP-complete even when restricted to these graph classes.
14. 14. We ﬁrst present a randomized algorithm with running time: f(ℓ) · [Time to enumerate maximal independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ. We also establish the non-existence of a polynomial kernels for the problem when parameterized by solution size alone. (Under standard complexity-theoretic assumptions.)
15. 15. The Algorithm Enumerate all maximal independent sets, and create an auxiliary graph that has one vertex mi for every MIS.
16. 16. The Algorithm Enumerate all maximal independent sets, and create an auxiliary graph that has one vertex mi for every MIS.
17. 17. The Algorithm Enumerate all maximal independent sets, and create an auxiliary graph that has one vertex mi for every MIS.
18. 18. The Algorithm Enumerate all maximal independent sets, and create an auxiliary graph that has one vertex mi for every MIS.
19. 19. The Algorithm Enumerate all maximal independent sets, and create an auxiliary graph that has one vertex mi for every MIS.
20. 20. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
21. 21. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
22. 22. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
23. 23. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
24. 24. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
25. 25. The Algorithm Introduce vertices corresponding to V(G) and introduce the edge (v, mi) if v ∈ mi. a b b c c d d e e f f a
26. 26. The Algorithm Color the vertices of the graph with ℓ colors, uniformly at random. Consider the color classes in the auxiliary graph. b a Maximal Independent Sets Partition into L classes A random coloring of G
27. 27. The Algorithm Now contract all the color classes into singletons, and ﬁnd a dominating set of size at most q. b a Maximal Independent Sets Partition into L classes A random coloring of G
28. 28. The Algorithm Clearly, if there is a dominating set, then we have found q-colorable subgraph of size at least ℓ. b a Maximal Independent Sets Partition into L classes A random coloring of G
29. 29. The Algorithm To compute the dominating set, make the “MIS vertices” a clique and run Steiner Tree with the V as the terminals. b a Maximal Independent Sets Partition into L classes A random coloring of G Make this a clique
30. 30. The Algorithm When we randomly color the vertices, each vertex in a possible solution will get different colors with probability: ℓ! ℓℓ ⩾ e−ℓ
31. 31. The Algorithm When we randomly color the vertices, each vertex in a possible solution will get different colors with probability: ℓ! ℓℓ ⩾ e−ℓ Once we have a nice coloring, clearly everything else works out ﬁne.
32. 32. The Algorithm When we randomly color the vertices, each vertex in a possible solution will get different colors with probability: ℓ! ℓℓ ⩾ e−ℓ Once we have a nice coloring, clearly everything else works out ﬁne.
33. 33. The Algorithm We then present a randomized algorithm with running time: f(ℓ) · [Time to ﬁnd a maximum sized independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ.
34. 34. The Algorithm We then present a randomized algorithm with running time: f(ℓ) · [Time to ﬁnd a maximum sized independent sets] · p(n, q), to ﬁnd an induced q-colorable subgraph of size at least ℓ. This algorithm is good for perfect graphs where maximum independent set can be found in polynomial time.
35. 35. The Algorithm A graph H is q colorable if and only if its vertex set can be partitioned into q independent sets.
36. 36. The Algorithm • Randomly color the vertices of G with {1, . . . , q}. • Let Vi be the set of vertices with color i. • Find a maximum sized independent set Ii ⊆ G[Vi]. • Return I = ∪q i=1Ii.
37. 37. The Algorithm Suppose we have a solution W = ⊎q i=1 Wi. Here Wi is an independent solution and ∑q 1=1 Wi| = ℓ.
38. 38. The Algorithm Suppose we have a solution W = ⊎q i=1 Wi. Here Wi is an independent solution and ∑q 1=1 Wi| = ℓ. When we randomly color the vertices, a vertex in Wi gets color i 1 qℓ
39. 39. The Algorithm Suppose we have a solution W = ⊎q i=1 Wi. Here Wi is an independent solution and ∑q 1=1 Wi| = ℓ. When we randomly color the vertices, a vertex in Wi gets color i 1 qℓ Once we have a nice coloring, clearly everything else works out ﬁne.
40. 40. The Algorithm Suppose we have a solution W = ⊎q i=1 Wi. Here Wi is an independent solution and ∑q 1=1 Wi| = ℓ. When we randomly color the vertices, a vertex in Wi gets color i 1 qℓ Once we have a nice coloring, clearly everything else works out ﬁne.
41. 41. Kernelization Algorithm A parameterized problem is said to admit a polynomial kernel if every instance (I, k) can be reduced in polynomial time to an equivalent instance (I′, k′) with both size and parameter value bounded by a polynomial in k.
42. 42. No Kernel Results Finally, we show that (under standard complexity-theoretic assumptions) the problem does not admit a polynomial kernel on split and perfect graphs in the following sense:
43. 43. No Kernel Results Finally, we show that (under standard complexity-theoretic assumptions) the problem does not admit a polynomial kernel on split and perfect graphs in the following sense: (a) On split graphs, we do not expect a polynomial kernel if q is a part of the input. (b) On perfect graphs, we do not expect a polynomial kernel even for ﬁxed values of q ⩾ 2.
44. 44. Composition A OR-composition algorithm for a parameterized problem Π ⊆ Σ∗ × N is an algorithm
45. 45. Composition A OR-composition algorithm for a parameterized problem Π ⊆ Σ∗ × N is an algorithm that receives as input a sequence ((x1, k), ..., (xt, k)), with (xi, k) ∈ Σ∗ × N for each 1 ⩽ i ⩽ t,
46. 46. Composition A OR-composition algorithm for a parameterized problem Π ⊆ Σ∗ × N is an algorithm that receives as input a sequence ((x1, k), ..., (xt, k)), with (xi, k) ∈ Σ∗ × N for each 1 ⩽ i ⩽ t, uses time polynomial in ∑t i=1 |xi| + k, and outputs (y, k′) ∈ Σ∗ × N
47. 47. Composition A OR-composition algorithm for a parameterized problem Π ⊆ Σ∗ × N is an algorithm that receives as input a sequence ((x1, k), ..., (xt, k)), with (xi, k) ∈ Σ∗ × N for each 1 ⩽ i ⩽ t, uses time polynomial in ∑t i=1 |xi| + k, and outputs (y, k′) ∈ Σ∗ × N with (a) (y, k′) ∈ Π ⇐⇒ (xi, k) ∈ Π for some 1 ⩽ i ⩽ t and (b) k′ is polynomial in k.
48. 48. Composition A OR-composition algorithm for a parameterized problem Π ⊆ Σ∗ × N is an algorithm that receives as input a sequence ((x1, k), ..., (xt, k)), with (xi, k) ∈ Σ∗ × N for each 1 ⩽ i ⩽ t, uses time polynomial in ∑t i=1 |xi| + k, and outputs (y, k′) ∈ Σ∗ × N with (a) (y, k′) ∈ Π ⇐⇒ (xi, k) ∈ Π for some 1 ⩽ i ⩽ t and (b) k′ is polynomial in k. A parameterized problem is or OR-compositional if there is a composition algorithm for it.
49. 49. The Composition The Composition Algorithm
50. 50. The Composition .. G1 . G2 . G3 . G4 .G5 . G6 . G7 . G8
51. 51. The Composition .. G1 . G2 . G3 . G4 . G6 . G7 . G8 .G5
52. 52. The Composition .. G2 . G3 . G6 . G8 . G1 . G4 .G5 . G7
53. 53. The Composition .. G1 . G2 . G3 . G4 .G5 . G6 . G7 . G8
54. 54. The Composition .. G2 . G3 . G6 . G8 . G7 . G1 . G4 .G5
55. 55. The Composition .. G2 . G3 . G6 . G8 .G5 . G7 . G1 . G4 A spillover across two instances could still be a problem.
56. 56. The Composition At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
57. 57. The Composition What is this gadget trying to achieve? At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
58. 58. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
59. 59. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
60. 60. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
61. 61. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
62. 62. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: At most two inner vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
63. 63. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: All four outer vertices participate in the solution. .. xij . wij . yij . zij . aij . bij . cij . dij
64. 64. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: Inner vertices from two levels do not participate together. .. xij . wij . yij . zij . aij . bij . cij . dij
65. 65. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: Inner vertices from two levels do not participate together. .. xij . wij . yij . zij . aij . bij . cij . dij
66. 66. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: Inner vertices from two levels do not participate together. .. xij . wij . yij . zij . aij . bij . cij . dij
67. 67. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: Inner vertices from two levels do not participate together. .. xij . wij . yij . zij . aij . bij . cij . dij
68. 68. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: Inner vertices from two levels do not participate together. .. xij . wij . yij . zij . aij . bij . cij . dij
69. 69. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: A valid contribution, therefore, is either … .. xij . wij . yij . zij . aij . bij . cij . dij
70. 70. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: A valid contribution, therefore, is either this .. xij . wij . yij . zij . aij . bij . cij . dij
71. 71. The Composition If the gadget contributes six vertices to any induced bipartite subgraph, then: A valid contribution, therefore, is either or this: .. xij . wij . yij . zij . aij . bij . cij . dij
72. 72. The Composition ........................................................ —log t— . 2k
73. 73. The Composition ......................................................... —log t— . 2k
74. 74. The Composition ........................................................ G0 : 000 ................... —log t— . 2k
75. 75. The Composition ........................................................ G1 : 001 ................... —log t— . 2k
76. 76. The Composition ........................................................ G2 : 010 ................... —log t— . 2k
77. 77. The Composition ........................................................ G3 : 011 ................... —log t— . 2k
78. 78. The Composition ........................................................ G4 : 100 ................... —log t— . 2k
79. 79. The Composition ........................................................ G5 : 101 ................... —log t— . 2k
80. 80. The Composition ........................................................ G6 : 110 ................... —log t— . 2k
81. 81. The Composition ........................................................ G7 : 111 ................... —log t— . 2k
82. 82. k −→ k + 12k · log t
83. 83. k −→ k + 12k · log t ...can be shown to be a polynomial in k without loss of generality.
84. 84. The Forward Direction
85. 85. Suppose some Gi has a bipartite subgraph on k vertices.
86. 86. Suppose some Gi has a bipartite subgraph on k vertices. Consider the binary representation of i. Pick the six vertices from the 2k log t gadgets that Gi is non-adjacent to.
87. 87. ........................................................ G5 : 101 ..................
88. 88. ...................................... G5 : 101
89. 89. The Reverse Direction
90. 90. Suppose the composed instance has an induced bipartite subgraph S on at least k + 12k · log t vertices.
91. 91. Suppose the composed instance has an induced bipartite subgraph S on at least k + 12k · log t vertices. Recall that each of the (2k log t) gadgets can contribute at most six vertices each.
92. 92. Suppose the composed instance has an induced bipartite subgraph S on at least k + 12k · log t vertices. Recall that each of the (2k log t) gadgets can contribute at most six vertices each. Consider: (S ∩ Gi) for 1 ⩽ i ⩽ t.
93. 93. Suppose the composed instance has an induced bipartite subgraph S on at least k + 12k · log t vertices. Recall that each of the (2k log t) gadgets can contribute at most six vertices each. Consider: (S ∩ Gi) for 1 ⩽ i ⩽ t. If S ∩ Gi is non-empty for exactly one instance Gi, then we are done, because then we automatically have that |S ∩ Gi| ⩾ k.
94. 94. We also know that S cannot be shared by three of the instances, since that would induce a triangle.
95. 95. We also know that S cannot be shared by three of the instances, since that would induce a triangle. Let us now address the only remaining case: what if S intersects Gi and Gj non-trivially, for some 1 ⩽ i ̸= j ⩽ t?
96. 96. If i ̸= j, then the bit vectors corresponding to i and j are also different.
97. 97. If i ̸= j, then the bit vectors corresponding to i and j are also different. Let b be an index (1 ⩽ b ⩽ log t) where i and j differ.
98. 98. ........................................................ G5 : 101 and G7 : 111 ........................
99. 99. These 2k gadgets, corresponding to the index b, cannot contribute to S at all, being global to vertices in Gi and Gj.
100. 100. ...................................... G5 : 101 and G7 : 111 ............
101. 101. The remaining gadgets can contribute at most: [2k · (log t − 1)]6 + 4(2k) = 12k log t − 4k.
102. 102. The remaining gadgets can contribute at most: [2k · (log t − 1)]6 + 4(2k) = 12k log t − 4k. Thus Gi and Gj together must account for at least 5k vertices between them.
103. 103. The remaining gadgets can contribute at most: [2k · (log t − 1)]6 + 4(2k) = 12k log t − 4k. Thus Gi and Gj together must account for at least 5k vertices between them. This implies that at least one of them must be contributing at least k vertices, and this leads us to our conclusion.
104. 104. Danke!