Presentation is loading. Please wait.

Presentation is loading. Please wait.

Input-Dependent and Asymptotic Approximation. Summary -Approximation algorithm for graph coloring -Approximation algorithm for set cover -Asymptotic approximation.

Similar presentations


Presentation on theme: "Input-Dependent and Asymptotic Approximation. Summary -Approximation algorithm for graph coloring -Approximation algorithm for set cover -Asymptotic approximation."— Presentation transcript:

1 Input-Dependent and Asymptotic Approximation

2 Summary -Approximation algorithm for graph coloring -Approximation algorithm for set cover -Asymptotic approximation scheme for edge coloring

3 begin i:=0; U:=V; while U  ø do begin i:=i+1;V[i]:=ø;W:=U;H:=graph induced by W; while W  ø do begin v=node of minimum degree in H; insert v inV[i]; delete v and its neighbors from W; U:=U-V[i] end end. Approximation of graph coloring -Polynomial-time n/logn-approximation algorithm for MINIMUM GRAPH COLORING

4 Proof We first prove that, if G is k-colorable, then the algorithm uses at most 3|V|/log k |V| colors. -At any iteration of the inner loop, H is k- colorable -Hence, it contains an independent set of at least |W|/k nodes of degree at most |W|(k-1)/k -At least |W|/k nodes will be in W at the next iteration -At least log k |W| iterations of the inner loop -|V[i]| is at least log k |U|

5 Proof (continued) -As long as |U|  |V|/log k |V|, log k |U|  log k (|V|/log k |V|)  (1/2) log k |V| -When |U|<|V|/log k |V|, at most 2|V|/log k |V| colors have been used -To color the remaining nodes|V|/log k |V| colors suffice -That is, the algorithm uses at most 3|V|/log k |V| colors

6 Proof (end) -The algorithm uses at most |V|/log m*(G) |V|, that is, at most 3nlog(m*(G))/logn colors -The performance ratio is at most 3n/logn

7 MINIMUM SET COVER -INSTANCE: Collection C of subsets of a finite set S -SOLUTION: A set cover for S, i.e., a subset C’ of C such that every element in S belongs to at least one member of C’ -MEASURE: |C’|

8 begin U:=S; C’:=ø; for any c i do c’ i := c i ; repeat i:=index of c’with maximum cardinality; insert c i in C’; U := U-{elements of c’ i }; delete all elements of c i from all c’; until U:=ø end. Johnson’s algorithm -Polynomial-time logarithmic approximation algorithm for MINIMUM SET COVER

9 Proof -We prove that the performance ratio of the algorithm is at most ∑ 1  i  k (1/i) where k is the maximum cardinality of the sets in C -Let a 1,...,a |C’| be the sequence of indices obtained by the algorithm -Let c j i be the surviving part of c i before index a j has been chosen -The intersection of c i and c j a j is equal to c j i - c j+1 i -l i denote largest index j such that c j i is not empty

10 First step For any i, H(|c i |)   1  j  C’| (|c i  c j a j |/|c j a j |) where H(n)=  1  i  n (1/i) Proof  1  j  C’| (|c i  c j a j |/|c j a j |)=  1  j  C’| (|c j i |-|c j+1 i |)/|c j a j |)   1  j  l i (|c j i |-|c j+1 i |)/|c j i |)=  1  j  l i  |c j+1 i |+1  k  | c j i | (1/|c j i |)   1  j  l i  1  k  | c j i |-|c j+1 i | (1/(k+|c j+1 i |))   1  j  l i (H(|c j i |)-H(|c j+1 i |)= H(|c 1 i |)=H(|c i |)

11 Second step For any set cover C’’,  c i  C’’  1  j  |C’| (|c i  c j a j |/|c j a j |)  |C’| Proof  c i  C’’  1  j  |C’| (|c i  c j a j |/|c j a j |) =  1  j  |C’| (1/|c j a j |)  c i  C’’ |c i  c j a j |   1  j  =|C’| (|c j a j |/|c j a j |) = |C’|

12 Final step H(|c i |)   1  j  C’| (|c i  c j a j |/|c j a j |) and  c i  C*  1  j  C’| (|c i  c j a j |/|c j a j |)  |C’| imply  c i  C* H(|c i |)  |C’| Since |c i |  k, we have that  c i  C* H(k)  |C’|, that is, |C*|H(k)  |C’| Since H(k)  ln k+1  ln n+1, we have that the performance ratio is logarithmic

13 MINIMUM EDGE COLORING -INSTANCE: Graph G=(V,E) -SOLUTION: A coloring of E, that is, function f such that, for any pair of edges e 1 and e 2 that share a common endpoint, f(e 1 )  f(e 2 ) -MEASURE: Number of colors, i.e., cardinality of the range of f

14 Vizing’s algorithm -Polynomial-time algorithm to color a graph with at most D+1 colors, where D denotes the maximum degree of the graph begin D:=maximum degree of G; G’:=(V, E’:=ø); // G’ is clearly colorable with D+1 colors repeat add an edge (u,v) of E to E’; extend coloring of G’ without (u,v) into coloring of G’ with at most D+1 colors; E := E-{(u,v)}; until E:=ø end.

15 Asymptotic approximation scheme -The algorithm returns an edge-coloring with at most D+1 colors -The optimum is at least D -Hence, performance ratio is at most (D+1)/m*(G)  D/D+1/m*(G)=1+ 1/m*(G) -It implies a 2-approximation

16 Proof -Assume G’ without (u,v) has an edge-coloring with at most D+1 colors -Let µ(v) denote the set of colors that are not used to color an edge incident to v -Clearly, if the coloring uses D+1 colors, then for any v, µ(v)  ø: let c(v) be one of the colors in µ(v)

17 Proof (continued) -Compute in polynomial-time a sequence of edges (u,x[0]),...,(u,x[s]) such that: -x[0]=v -for any i, the color of (u,x[i]) = c(x[i-1]) -there is no other edge (u,w) such that its color is equal to c(x[s])

18 First case: c(x[s]) is in µ(u) -In this case, we can simply shift the colors of the sequence in order to obtain the new coloring of G’ -That is, for any i, we color (u,x[i]) with c(x[i])

19 Second case: c(x[s]) is not in µ(u) -In this case, one edge (u,x[i]) must have been colored with c(x[s]) (since the sequence is maximal) -Hence, c(x[i-1]) = c(x[s]) -We compute in polynomial time a path P i-1 starting from x[i-1] formed by edges whose colors are, alternatively, c(u) and c(x[s])

20 First subcase: P i-1 does not end in u -Interchange colors c(u) and c(x[s]) in the path, assign color c(u) to (u,x[i]), shift the colors of the subsequence of edges preceding (u,x[i-1])

21 Second subcase: P i-1 ends in u -Compute in polynomial time a path P s starting from x[s] formed by edges whose colors are, alternatively, c(u) and c(x[s]) -P s does not end in u

22 -Interchange colors c(u) and c(x[s]) in P s, assign color c(u) to (u,x[s]), and shift the colors of the subsequence of edges preceding (u,x[s])

23 Class F -APX -Let F be a class of functions -The class F -APX contains all NPO problems P that admit a polynomial-time algorithm A such that, for any instance x of P, R(x, A (x)))  f(|x|), for a given function f  F -P is said to be f(n)-approximable -A is said to be an f(n)-approximation algorithm

24 Class APTAS -The class APTAS contains all NPO problems P that admit a polynomial-time algorithm A and a constant k such that, for any instance x of P and for any rational r, R(x, A (x,r)))  r+k/m*(x) -The time complexity of A is polynomial in |x| but not necessarily in 1/(r-1) -A is said to be an asymptotic approximation scheme -A is clearly a (r+k)-approximation algorithm

25 The NPO world NPO APX MAXIMUM SAT MINIMUM VERTEX COVER MAXIMUM CUT PO MINIMUM PATH O(n)-APX O(logn)-APX MINIMUM GRAPH COLORING MINIMUM SET COVER PTASMINIMUM PARTITION APTASMINIMUM EDGE COLORING


Download ppt "Input-Dependent and Asymptotic Approximation. Summary -Approximation algorithm for graph coloring -Approximation algorithm for set cover -Asymptotic approximation."

Similar presentations


Ads by Google