330 likes | 463 Views
Covers, Dominations, Independent Sets and Matchings. AmirHossein Bayegan Amirkabir University of Technology. Basic Concepts. Vertex Cover If G(V,E) is a graph, then a vertex of G is said to cover any edge of G that is incident with
E N D
Covers, Dominations, Independent Sets and Matchings AmirHosseinBayegan Amirkabir University of Technology
Basic Concepts • Vertex Cover • If G(V,E) is a graph, then a vertex of G is said to cover any edge of G that is incident with • A set of vertices in G that covers every edge of G is called a vertex cover • Edge Cover • An edge covers its endpoints • A set of edges in G that covers every vertex of G is called an edge cover
Vertex Dominating Set • A vertex is said to dominate both itself and any adjacent vertex • A vertex dominating set is a set of vertices S such that every vertex in G is dominated by some vertex in S • Edge Dominating Set • An edge is said to dominate the edges incident to its endpoints as well as itself • An edge dominating set is a set of vertices X such that every edge in G is dominated by some edge in X
Independent Set of Vertices • A set of vertices no two of which are adjacent • Independent Set of Edges or Matching • A set of edges no two of which are adjacent • Minimum cardinality of a vertex cover of G: Min-VCov(G) • Minimum cardinality of an edge cover of G: Min-ECov(G) • Minimum cardinality of a vertex dominating set: Min-VDom(G) • Minimum cardinality of a edge dominating set: Min-EDom(G) • Maximum cardinality of a matching on G: Max-Match(G) • Maximum cardinality of a vertex independent set: Max-Indep(G)
Theorem: if G(V,E) is a graph with no isolated vertices then • Min-EDom(G) Max-Match(G) Min-VCov(G), and • Min-VDom(G) Max-Indep(G) Min-ECov(G) • Theorem (Gallai’ s Complementarity Relations): if G(V,E) is a graph with no isolated vertices then • Max-Match(G) + Min-ECov(G) = |V(G)| • Max-Indep(G) + Min-VCov(G) = |V(G)|
Approximation algorithm for maximum independent set in planar graphs • We present an O(n log n) time approximation algorithm with absolute worst-case ratio , due to Chiba, Nishizeki and Saito The algorithm is based on the following ideas: (i) we can reduce the problem on a general planar graph to one on a planar graph having no vertices of degree 4 or less; (ii) we can design an O(n log n) time “on-line” algorithm to execute any sequence of vertex-identifications and edge deletions of a given planar graph.
Lemma 7.1. Let a planar graph G = (V, E) contain a vertex v of degree 4 with N(v) = {vl , v2 , v3 , v4} , and let H be a subgraph of G induced by {v} U N(v). Then, renaming vertices in N(v) if necessary, we can assume that either (i) H is isomorphic with H4; or (ii) H contains H’4 or H”4 as a subgraph, and moreover (v1,v3)E Recall: Corollary 1.4. Every planar graph contains a vertex of degree at most 5
Theorem 7.2. For any planar graph G = (V, E) with n vertices, the algorithm finds an independent set of at least vertices. • Proof : We proceed by induction on the number n of vertices of G • for any planar graph having n < 4 vertices, our algorithm always finds an independent vertex set of at least one vertex • Inductive hypothesis • algorithm always adds at least one vertex to I(G’) to form an independent set I(G) • the degree of v is 5 or less 1+2+3
Theorem: If G is a planar connected graph with minimum degree 3, 4, or 5, a maximum independent set of G contains less than 2n/3, 2n/4, or 2n/5 vertices, respectively. • Proof. Let I* V be a maximum independent set of G. Let G’ be the spanning subgraph obtained from G by deleting all the edges having both ends in V - I*, and assume that G’ has m’ edges. Since G‘ is a planar bipartite graph with n vertices, d(G, v) = d(G’, v) for every vertex v in so according to the minimum degree: , or So , or
Theorem 7.1. For any planar graph G = (V, E), the algorithm finds an independent set of G with worst-case ratio • Proof. • If dm(G) 5 we use last two theorems • If dm(G) 4 it suffice to show that We consider three cases depending on dm(G):
Lemma 7.2. Let G = (V, E) be a graph, and let s be any sequence of edge deletions on G. There exists an on-line algorithm to execute s in O(m) time. • Lemma 7.3. Let G = (V, E) be a graph, and let s be any sequence of identifications on G. There exists an on-line algorithm to execute s in at most O(min {mlogn, n2}) time.
Proof: The total amount of time T(s) required for s satisfies: we shall show that T(s) is at most O(m log n): Consider multigraphs G*i corresponding to Gi , in which the multiple edges and loops produced by identifications are not deleted. We have The surrogate of ui , in G*i+1 has degree at least twice as large as ui , in G*i . The degree of a vertex is nondecreasing, and the degree of a vertex in G*i+1 is clearly at most 2m. • Therefore the total cost is at most 2m log2m = O(m log n)
Theorem 7.3. The algorithm spends at most O(n logn) time on a planar graph G =(V,E). • we can find a vertex v of minimum degree in a constant time • Identification O(m logn) • edge-deletion O(m) • deletion of an isolated vertex O(n) • Total O(n logn)
Baker’s algorithm • Approximation algorithm for the maximum independent set problem on planar graphs • Attains the worst-case ratio k/(k + 1) and runs in O(8kkn) time for any positive integer k K Time worst-case ratio 1 linear ½ loglog n O(n(1og n)3 log log n) log log n/(1 + log log n)
choose k as an appropriate integer • consider a plane embedding of a given graph G and define the level of a vertex as follows: the vertices on the outer boundary have level 1; the vertices on the outer boundary of the subgraph obtained by deleting the level i - 1 vertices have level i; • for each i, 0 i k , do the following: construct graph Gi = G - Vi, where Vi is the set of all the vertices of level i(mod k+1) (all the components of G, are “k-outerplanar”, that is, it has an embedding having no vertex of level > k); find a maximum independent set I*(Gi) of G, by taking union of those of the components; • output the largest I*(Gi) as the solution of G.
A maximum independent set I*(G) of G is partitioned into k + 1 subsets {I*(G) ∩ Vi | i = 0, 1, , k} • Clearly the smallest one contains at most 1/(k + 1) of I*(G) • Therefore the largest I*(Gi) satisfies |I*(Gi)|≥k|I*(G)|/(k + 1) • worst-case ratio k/(k + 1)
Matching and processor scheduling • Suppose we have set of tasks each takes a unit time • The order the tasks can be scheduled is restricted by precedence constraints • We will show how to schedule these tasks in parallel on a pair of processors in such a way as to minimize the earliest completion of the system • We shall bound the completion time in terms of the size of matching
The optimal scheduling algorithm is as follows: • Identify tasks Ti1 to Tikhaving no successors and assign them priorities 1 to k, respectively. Say next to k+1 • repeat (2a and b) until every task has been assigned a priority • For each task T all of whose successor tasks s1,…,smhave been assigned a priority, let v(T) be an m-vector components as the priority labels of tasks in ascending order • Select lexicographically smallest vector-labelled task T, and set priority(T) to next. Then set next to next+1 • Whenever a processor becomes free assign it to the highest priority task remaining to complete
(3) 1 3 2 6 (1,3) 4 7 (2,6) 9 (5,8) (2,4) 5 8 (7)
Theorem(Scheduling Lower Bound). Let a system of tasks constrained by a set of precedence constraints represented by a digraph G(V,E) be defined as shown. Let t min denote the minimum time in which the task system can be completed. Then tmin • M() returns a maximum matching • C() returns the complement • U() returns undirected graph • T() returns transitive closure
T1 T2 T5 T1 T4 T5 T3 T4 T2 T3 Task precedence graph Associated graph C(U(T(G))) T1 T4 T5 M M T3 T2
Thanks ?