Faster Algorithm for Optimum Steiner Trees. Jens Vygen

Size: px
Start display at page:

Download "Faster Algorithm for Optimum Steiner Trees. Jens Vygen"

Transcription

1 Faster Algorithm for Optimum Steiner Trees Jens Vygen University of Bonn Aussois 2010

2 The Steiner Tree Problem Given an undirected graph G with weights c : E(G) R +, and a terminal set T V (G),

3 The Steiner Tree Problem Given an undirected graph G with weights c : E(G) R +, and a terminal set T V (G), find a Steiner tree Y for T in G (a tree which is a subgraph of G containing all terminals) such that e E(Y ) c(e) is minimum.

4 The Steiner Tree Problem Given an undirected graph G with weights c : E(G) R +, and a terminal set T V (G), find a Steiner tree Y for T in G (a tree which is a subgraph of G containing all terminals) such that e E(Y ) c(e) is minimum. The problem is NP-hard (Karp [1972]) and even MAXSNP-hard (Bern, Plassmann [1989])

5 The Steiner Tree Problem Given an undirected graph G with weights c : E(G) R +, and a terminal set T V (G), find a Steiner tree Y for T in G (a tree which is a subgraph of G containing all terminals) such that e E(Y ) c(e) is minimum. The problem is NP-hard (Karp [1972]) and even MAXSNP-hard (Bern, Plassmann [1989]) Sufficient to consider the metric closure.

6 The Dreyfus-Wagner Algorithm For X T and v V (G) \ X: σ(x {v}) = σ(x {w}) + σ((x \ X ) {w}) + c({v, w}) v w

7 The Dreyfus-Wagner Algorithm For X T and v V (G) \ X: σ(x {v}) = σ(x {w}) + σ((x \ X ) {w}) + c({v, w}) v w due to Dreyfus and Wagner [1972] and Levin [1971] running time O(3 k n + 2 k (m + n log n)), where n = V (G), m = E(G), k = T (Erickson, Monma and Veinott [1987])

8 Recent Improvements Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: Find a set X of vertices that split an optimum Steiner tree into subtrees ( with few terminals (by enumeration). O (2 + δ) k n (ln(1/δ)/δ)ζ) for ζ > 1 2 and sufficiently small δ > 0.

9 Recent Improvements Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: Find a set X of vertices that split an optimum Steiner tree into subtrees ( with few terminals (by enumeration). O (2 + δ) k n (ln(1/δ)/δ)ζ) for ζ > 1 2 and sufficiently small δ > 0. This ( bound is at least O 2 k+(k/2)1/3 (ln n) 2/3).

10 Recent Improvements Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: Find a set X of vertices that split an optimum Steiner tree into subtrees ( with few terminals (by enumeration). O (2 + δ) k n (ln(1/δ)/δ)ζ) for ζ > 1 2 and sufficiently small δ > 0. This ( bound is at least O 2 k+(k/2)1/3 (ln n) 2/3). Fomin, Grandoni, Kratsch [2008]: O(5.96 k n O(log k) )-time algorithm with polynomial space Björklund, Husfeldt, Kaski, Koivisto [2007], Fomin, Grandoni, Kratsch [2008], Nederlof [2009]: algorithms for special case (edge weights are small integers)

11 Algorithms for Optimum Steiner Trees Erickson, Monma, Veinott [1987]: O ( 3 k n + 2 k (m + n log n) ) Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: O (2 k+(k/2)1/3 (ln n) 2/3) enumeration: O ( mα(m, n)2 n k)

12 Algorithms for Optimum Steiner Trees Erickson, Monma, Veinott [1987]: O ( 3 k n + 2 k (m + n log n) ) Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: O (2 k+(k/2)1/3 (ln n) 2/3) here: O ( nk2 k+(log 2 k)(log 2 n)) enumeration: O ( mα(m, n)2 n k)

13 Algorithms for Optimum Steiner Trees Erickson, Monma, Veinott [1987]: O ( 3 k n + 2 k (m + n log n) ) fastest if k < 4 log n Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: fastest if 4 log n < k < 2 log n(log log n) 3 O (2 k+(k/2)1/3 (ln n) 2/3) here: O ( nk2 k+(log 2 k)(log n)) 2 fastest if 2 log n(log log n) 3 < k < (n log 2 n)/2 enumeration: fastest if k > (n log 2 n)/2 O ( mα(m, n)2 n k)

14 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15, v 16, v 17 },, 1) v 17

15 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15, v 16, v 17 },, 1) = c({v 17, v 16 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15, v 16 },, 1) v 13 v 17

16 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15, v 16 },, 1) = c({v 16, v 14 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15 }, {v 14 }, 1) v 13 v 17

17 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13, v 15 }, {v 14 }, 1) = c({v 15, v 14 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13 }, {v 14 }, 2) v 13 v 17

18 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13 }, {v 14 }, 2) = c({v 14, v 10 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13 }, {v 10 }, 1) v 13 v 17

19 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12, v 13 }, {v 10 }, 1) = c({v 13, v 11 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12 }, {v 10, v 11 }, 1) v 13 v 17

20 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9, v 12 }, {v 10, v 11 }, 1) = c({v 12, v 11 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 10, v 11 }, 2) v 13 v 17

21 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 10, v 11 }, 2) = c({v 11, v 10 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 10 }, 2) v 13 v 17

22 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 10 }, 2) = c({v 10, v 8 })+ σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 8 }, 1) v 17

23 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6, v 7, v 9 }, {v 8 }, 1) = c({v 9, v 8 })+ σ({, v 1, v 3, v 5, v 6, v 7 }, {v 8 }, 2) v 17

24 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6, v 7 }, {v 8 }, 2) = c({v 8, v 7 })+ σ({, v 1, v 3, v 5, v 6, v 7 },, 1) v 17

25 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6, v 7 },, 1) = c({v 7, v 2 })+ σ({, v 1, v 3, v 5, v 6 }, {v 2 }, 1) v 17

26 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5, v 6 }, {v 2 }, 1) = c({v 6, v 4 })+ σ({, v 1, v 3, v 5 }, {v 2, v 4 }, 1) v 17

27 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 σ({, v 1, v 3, v 5 }, {v 2, v 4 }, 1) = c({v 5, v 4 })+ σ({, v 1, v 3 }, {v 2, v 4 }, 2) v 17

28 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3 }, {v 2, v 4 }, 2) = c({v 4, v 2 })+ σ({, v 1, v 3 }, {v 2 }, 1) v 13 v 17

29 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1, v 3 }, {v 2 }, 1) = c({v 3, v 2 })+ σ({, v 1 }, {v 2 }, 2) v 13 v 17

30 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1 }, {v 2 }, 2) = c({v 2, v 1 })+ σ({, v 1 },, 1) v 13 v 17

31 New Algorithm For X T and B V (G) \ T : v 5 v 6 σ(x, B, i) = σ(x, B, i ) + c(e). v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 σ({, v 1 },, 1) = c({v 1, })+ σ({ },, 1) v 13 v 17

32 Recursion formulas For X T and B V (G) \ T : { 0 B = σ(x, B, 1) := B { σ(x, B, 1) := min if X = 1, min{σ(x\{x}, B, i)+c(u, x) : x X, u (X\{x}) B, i {1, 2}}, } min{σ(x\{x}, B {u}, 1)+c(u, x) : x X, u V (G)\(X B)} if X 2, σ(x, B, 2) := if B =, { σ(x, B, 2) := min min{σ(x, B\{b}, i)+c(u, b) : b B, u X (B\{b}), i {1, 2}}, } min{σ(x, B\{b} {u}, 1)+c(u, b) : b B, u V (G)\(T B)} if B.

33 Observation Theorem Let G be a complete graph. Let c : E(G) R + satisfy the triangle inequality. Let T V (G). Then σ(t,, 1) is the minimum length of a Steiner tree for T.

34 How many boundary points are needed? Theorem Let Y be a tree and T V (Y ) such that each vertex in V (Y ) \ T has degree at least three. Let n := V (Y ), k := T 3, and β := 1 + log 2 (k/3). Then we can number V (Y ) = {,..., v n 1 } and E(Y ) = {e 1,..., e n 1 } such that the following conditions hold: v i e i {,..., v i } for i = 1,..., n 1. n 1 {v 0,..., v i } e h β for i = 0,..., n 1. h=i+1

35 Proof (Sketch)

36 Proof (Sketch)

37 Proof (Sketch)

38 Proof (Sketch)

39 Proof (Sketch)

40 Proof (Sketch)

41 Proof (Sketch) v 1

42 Proof (Sketch) v 2 v 1

43 Proof (Sketch) v 3 v 2 v 1

44 Proof (Sketch) v 4 v 3 v 2 v 1

45 Proof (Sketch) v 5 v 4 v 3 v 2 v 1

46 Proof (Sketch) v 5 v 6 v 4 v 3 v 2 v 1

47 Proof (Sketch) v 5 v 6 v 4 v 3 v 2 v 7 v 1

48 Proof (Sketch) v 5 v 6 v 4 v 3 v 2 v 7 v 8 v 1

49 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1

50 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1 v 10

51 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1 v 10 v 11

52 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1 v 10 v 12 v 11

53 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1 v 10 v 12 v 11 v 13

54 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 1 v 10 v 14 v 12 v 11 v 13

55 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 13

56 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13

57 Proof (Sketch) v 5 v 6 v 4 v 9 v 3 v 2 v 7 v 8 v 15 v 1 v 10 v 14 v 12 v 11 v 16 v 13 v 17

58 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage.

59 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: b j b 4 b 3 b 2 b 1

60 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: b j b 4 b 3 b 2 b 1 2

61 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 2 b j b 4 b 3 b 2 b 1 2

62 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 2 b j b 4 b 3 b 2 b 1 4 2

63 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 4 2 b j b 4 b 3 b 2 b 1 4 2

64 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 4 2 b j b 4 b 3 b 2 b

65 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: b j b 4 b 3 b 2 b

66 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: b j b 4 b 3 b 2 b 1 2 j

67 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 2 j b j b 4 b 3 b 2 b 1 2 j

68 Proof (Sketch) We have to show that the number of boundary points is at most β = 1 + log 2 (k/3) at any stage. If there are j boundary points b 1,..., b j at some stage, then: 2 j b j b 4 b 3 b 2 b 1 2 j j j 1 k j β.

69 The theorem is best possible In general we need 1 + log 2 (k/3) boundary points: r = 1 : r = 2 : 3 2 r terminals; need r + 1 boundary vertices

70 Recursion formulas (1) For X T, X, and B V (G) \ T, B β: { 0 B = σ(x, B, 1) := B if X = 1, { σ(x, B, 1) := min min{σ(x\{x}, B, i)+c(u, x) : x X, u (X\{x}) B, i {1, 2}}, } min{σ(x\{x}, B {u}, 1)+c(u, x) : x X, u V (G)\(X B)} if X 2 and B < β, σ(x, B, 1) := min{σ(x\{x}, B, i)+c(u, x) : x X, u (X\{x}) B, i {1, 2}} if X 2 and B = β,

71 Recursion formulas (2) For X T, X, and B V (G) \ T, B β: σ(x, B, 2) := if B =, { σ(x, B, 2) := min min{σ(x, B\{b}, i)+c(u, b) : b B, u X (B\{b}), i {1, 2}}, } min{σ(x, B\{b} {u}, 1)+c(u, b) : b B, u V (G)\(T B)} if B. Theorem Let G be a complete graph, let c : E(G) R + satisfy the triangle inequality. Let T V (G), k := T 3, and β := 1 + log 2 (k/3). Then σ(t,, 1) is the minimum length of a Steiner tree for T.

72 Algorithm 1. Compute the metric closure (Ḡ, c) of (G, c). 2. Compute the values σ(x, B, i) with respect to (Ḡ, c). 3. Collect the edges of an optimum Steiner tree for T in (Ḡ, c). 4. Replace each of these edges by a shortest path in (G, c).

73 Algorithm 1. Compute the metric closure (Ḡ, c) of (G, c). 2. Compute the values σ(x, B, i) with respect to (Ḡ, c). 3. Collect the edges of an optimum Steiner tree for T in (Ḡ, c). 4. Replace each of these edges by a shortest path in (G, c). Step 2 dominates the running time: k ( ) β ( ) O k n k (in + jn) = O i j i=1 j=0 Now use β = 1 + log 2 (k/3) log 2 k. ( nk2 k n β).

74 Main result Theorem Our algorithm computes a minimum weight Steiner tree for a terminal set T in a weighted graph (G, c) in O (nk2 k+(log 2 k)(log n)) 2 time, where n = V (G) and k = T.

75 Main result Theorem Our algorithm computes a minimum weight Steiner tree for a terminal set T in a weighted graph (G, c) in O (nk2 k+(log 2 k)(log n)) 2 time, where n = V (G) and k = T. Remark This is the fastest known algorithm if 2 log n (log log n) 3 < k < (n log 2 n)/2.

76 Summary Erickson, Monma, Veinott [1987]: O ( 3 k n + 2 k (m + n log n) ) fastest if k < 4 log n Fuchs, Kern, Mölle, Richter, Rossmanith, Wang [2007]: fastest if 4 log n < k < 2 log n(log log n) 3 O (2 k+(k/2)1/3 (ln n) 2/3) here: O ( nk2 k+(log 2 k)(log n)) 2 fastest if 2 log n(log log n) 3 < k < (n log 2 n)/2 enumeration: fastest if k > (n log 2 n)/2 O ( mα(m, n)2 n k)

Parameterized single-exponential time polynomial space algorithm for Steiner Tree

Parameterized single-exponential time polynomial space algorithm for Steiner Tree Parameterized single-exponential time polynomial space algorithm for Steiner Tree Fedor V. Fomin 1, Petteri Kaski 2, Daniel Lokshtanov 1, Fahad Panolan 1,3, and Saket Saurabh 1,3 1 University of Bergen,

More information

Computing Optimal Steiner Trees in Polynomial Space

Computing Optimal Steiner Trees in Polynomial Space Computing Optimal Steiner Trees in Polynomial Space Fedor V. Fomin Fabrizio Grandoni Dieter Kratsch Daniel Lokshtanov Saket Saurabh Abstract Given an n-node edge-weighted graph and a subset of k terminal

More information

Sharp Separation and Applications to Exact and Parameterized Algorithms

Sharp Separation and Applications to Exact and Parameterized Algorithms Sharp Separation and Applications to Exact and Parameterized Algorithms Fedor V. Fomin Fabrizio Grandoni Daniel Lokshtanov Saket Saurabh Abstract Many divide-and-conquer algorithms employ the fact that

More information

Speeding up the Dreyfus-Wagner Algorithm for minimum Steiner trees

Speeding up the Dreyfus-Wagner Algorithm for minimum Steiner trees Speeding up the Dreyfus-Wagner Algorithm for minimum Steiner trees Bernhard Fuchs Center for Applied Computer Science Cologne (ZAIK) University of Cologne, Weyertal 80, 50931 Köln, Germany Walter Kern

More information

Exponential approximation schemas for some graph problems

Exponential approximation schemas for some graph problems Exponential approximation schemas for some graph problems N. Boria, N. Bourgeois, B. Escoffier, V. Th. Paschos January 27, 2011 1 Introduction Among network design problems, traveling salesman problem

More information

Solving Connected Dominating Set Faster than 2 n

Solving Connected Dominating Set Faster than 2 n Solving Connected Dominating Set Faster than 2 n Fedor V. Fomin 1, Fabrizio Grandoni 2, and Dieter Kratsch 3 1 Department of Informatics, University of Bergen, N-5020 Bergen, Norway, fomin@ii.uib.no 2

More information

Dijkstra meets Steiner: a fast exact goal-oriented Steiner tree algorithm

Dijkstra meets Steiner: a fast exact goal-oriented Steiner tree algorithm Math. Prog. Comp. (2017) 9:135 202 DOI 10.1007/s12532-016-0110-1 FULL LENGTH PAPER Dijkstra meets Steiner: a fast exact goal-oriented Steiner tree algorithm Stefan Hougardy 1 Jannik Silvanus 1 Jens Vygen

More information

Solving Connected Dominating Set Faster than 2 n

Solving Connected Dominating Set Faster than 2 n Solving Connected Dominating Set Faster than 2 n Fedor V. Fomin. Fabrizio Grandoni Dieter Kratsch Abstract In the connected dominating set problem we are given an n-node undirected graph, and we are asked

More information

Computing rank-width exactly

Computing rank-width exactly Computing rank-width exactly Sang-il Oum Department of Mathematical Sciences KAIST 335 Gwahangno Yuseong-gu Daejeon 305-701 South Korea September 9, 2008 Abstract We prove that the rank-width of an n-vertex

More information

Exact Exponential Algorithms

Exact Exponential Algorithms /57 Exact Exponential Algorithms Dieter Kratsch Laboratoire d Informatique Théorique et Appliquée Université Paul Verlaine - Metz 57000 METZ Cedex 01 France Algorithms and Complexity in Durham (ACiD 2010)

More information

Algebraic approach to exact algorithms, Part III: Polynomials over nite elds of characteristic two

Algebraic approach to exact algorithms, Part III: Polynomials over nite elds of characteristic two Algebraic approach to exact algorithms, Part III: Polynomials over nite elds of characteristic two Šukasz Kowalik University of Warsaw ADFOCS, Saarbrücken, August 2013 Šukasz Kowalik (UW) Algebraic approach...

More information

The Number of Tree Stars Is O (1.357 k )

The Number of Tree Stars Is O (1.357 k ) Algorithmica (2007) 49: 232 244 DOI 10.1007/s00453-007-9020-y The Number of Tree Stars Is O (1.357 k ) Bernhard Fuchs Walter Kern Xinhui Wang Received: 23 May 2006 / Accepted: 27 July 2007 / Published

More information

Enumerating the edge-colourings and total colourings of a regular graph

Enumerating the edge-colourings and total colourings of a regular graph Enumerating the edge-colourings and total colourings of a regular graph S. Bessy and F. Havet November 5, 2011 Abstract In this paper, we are interested in computing the number of edge colourings and total

More information

July 18, Approximation Algorithms (Travelling Salesman Problem)

July 18, Approximation Algorithms (Travelling Salesman Problem) Approximation Algorithms (Travelling Salesman Problem) July 18, 2014 The travelling-salesman problem Problem: given complete, undirected graph G = (V, E) with non-negative integer cost c(u, v) for each

More information

Symposium on Theoretical Aspects of Computer Science 2008 (Bordeaux), pp TRIMMED MOEBIUS INVERSION AND GRAPHS OF BOUNDED DEGREE

Symposium on Theoretical Aspects of Computer Science 2008 (Bordeaux), pp TRIMMED MOEBIUS INVERSION AND GRAPHS OF BOUNDED DEGREE STACS 2008 Symposium on Theoretical Aspects of Computer Science 2008 (Bordeaux), pp. 85-96 http://drops.dagstuhl.de/opus/volltexte/2008/1336 Symposium on Theoretical Aspects of Computer Science 2008 (Bordeaux),

More information

Decision Problems TSP. Instance: A complete graph G with non-negative edge costs, and an integer

Decision Problems TSP. Instance: A complete graph G with non-negative edge costs, and an integer Decision Problems The theory of NP-completeness deals only with decision problems. Why? Because if a decision problem is hard, then the corresponding optimization problem must be hard too. For example,

More information

On the Role of Partition Inequalities in Classical Algorithms for Steiner Problems in Graphs

On the Role of Partition Inequalities in Classical Algorithms for Steiner Problems in Graphs On the Role of Partition Inequalities in Classical Algorithms for Steiner Problems in Graphs by Kunlun Tan A thesis presented to the University of Waterloo in fulfillment of the thesis requirement for

More information

CSCI 1590 Intro to Computational Complexity

CSCI 1590 Intro to Computational Complexity CSCI 1590 Intro to Computational Complexity NP-Complete Languages John E. Savage Brown University February 2, 2009 John E. Savage (Brown University) CSCI 1590 Intro to Computational Complexity February

More information

Steiner Trees in Chip Design. Jens Vygen. Hangzhou, March 2009

Steiner Trees in Chip Design. Jens Vygen. Hangzhou, March 2009 Steiner Trees in Chip Design Jens Vygen Hangzhou, March 2009 Introduction I A digital chip contains millions of gates. I Each gate produces a signal (0 or 1) once every cycle. I The output signal of a

More information

NP-Complete Problems and Approximation Algorithms

NP-Complete Problems and Approximation Algorithms NP-Complete Problems and Approximation Algorithms Efficiency of Algorithms Algorithms that have time efficiency of O(n k ), that is polynomial of the input size, are considered to be tractable or easy

More information

Limits and Applications of Group Algebras for Parameterized Problems

Limits and Applications of Group Algebras for Parameterized Problems Limits and Applications of Group Algebras for Parameterized Problems Ioannis Koutis Computer Science Department Carnegie Mellon University ioannis.koutis@cs.cmu.edu Ryan Williams School of Mathematics

More information

Exact and Parameterized Algorithms for Max Internal Spanning Tree

Exact and Parameterized Algorithms for Max Internal Spanning Tree Exact and Parameterized Algorithms for Max Internal Spanning Tree Henning Fernau 1, Serge Gaspers 2, and Daniel Raible 1 1 Univ. Trier, FB 4 Abteilung Informatik, D-54286 Trier, Germany {fernau,raible}@uni-trier.de

More information

Topics on Computing and Mathematical Sciences I Graph Theory (6) Coloring I

Topics on Computing and Mathematical Sciences I Graph Theory (6) Coloring I Topics on Computing and Mathematical Sciences I Graph Theory (6) Coloring I Yoshio Okamoto Tokyo Institute of Technology May, 008 Last updated: Wed May 6: 008 Y. Okamoto (Tokyo Tech) TCMSI Graph Theory

More information

Enumerating minimal connected dominating sets in graphs of bounded chordality,

Enumerating minimal connected dominating sets in graphs of bounded chordality, Enumerating minimal connected dominating sets in graphs of bounded chordality, Petr A. Golovach a,, Pinar Heggernes a, Dieter Kratsch b a Department of Informatics, University of Bergen, N-5020 Bergen,

More information

ABHELSINKI UNIVERSITY OF TECHNOLOGY

ABHELSINKI UNIVERSITY OF TECHNOLOGY Approximation Algorithms Seminar 1 Set Cover, Steiner Tree and TSP Siert Wieringa siert.wieringa@tkk.fi Approximation Algorithms Seminar 1 1/27 Contents Approximation algorithms for: Set Cover Steiner

More information

3. Branching Algorithms

3. Branching Algorithms 3. Branching Algorithms COMP6741: Parameterized and Exact Computation Serge Gaspers Semester 2, 2015 Contents 1 Introduction 1 2 Maximum Independent Set 3 2.1 Simple Analysis................................................

More information

Cutting Plane Methods II

Cutting Plane Methods II 6.859/5.083 Integer Programming and Combinatorial Optimization Fall 2009 Cutting Plane Methods II Gomory-Chvátal cuts Reminder P = {x R n : Ax b} with A Z m n, b Z m. For λ [0, ) m such that λ A Z n, (λ

More information

ACO Comprehensive Exam October 14 and 15, 2013

ACO Comprehensive Exam October 14 and 15, 2013 1. Computability, Complexity and Algorithms (a) Let G be the complete graph on n vertices, and let c : V (G) V (G) [0, ) be a symmetric cost function. Consider the following closest point heuristic for

More information

3. Branching Algorithms COMP6741: Parameterized and Exact Computation

3. Branching Algorithms COMP6741: Parameterized and Exact Computation 3. Branching Algorithms COMP6741: Parameterized and Exact Computation Serge Gaspers 12 1 School of Computer Science and Engineering, UNSW Australia 2 Optimisation Resarch Group, NICTA Semester 2, 2015

More information

Lecture 18: More NP-Complete Problems

Lecture 18: More NP-Complete Problems 6.045 Lecture 18: More NP-Complete Problems 1 The Clique Problem a d f c b e g Given a graph G and positive k, does G contain a complete subgraph on k nodes? CLIQUE = { (G,k) G is an undirected graph with

More information

Exponential-Time Approximation of Weighted Set Cover

Exponential-Time Approximation of Weighted Set Cover Exponential-Time Approximation of Weighted Set Cover Marek Cygan, Lukasz Kowalik and Mateusz Wykurz Institute of Informatics, University of Warsaw, Poland. cygan@mimuw.edu.pl, kowalik@mimuw.edu.pl, wykurz@gmail.com.

More information

VIII. NP-completeness

VIII. NP-completeness VIII. NP-completeness 1 / 15 NP-Completeness Overview 1. Introduction 2. P and NP 3. NP-complete (NPC): formal definition 4. How to prove a problem is NPC 5. How to solve a NPC problem: approximate algorithms

More information

CMPUT 675: Approximation Algorithms Fall 2014

CMPUT 675: Approximation Algorithms Fall 2014 CMPUT 675: Approximation Algorithms Fall 204 Lecture 25 (Nov 3 & 5): Group Steiner Tree Lecturer: Zachary Friggstad Scribe: Zachary Friggstad 25. Group Steiner Tree In this problem, we are given a graph

More information

Lecture 24 Nov. 20, 2014

Lecture 24 Nov. 20, 2014 CS 224: Advanced Algorithms Fall 2014 Prof. Jelani Nelson Lecture 24 Nov. 20, 2014 Scribe: Xiaoyu He Overview Today we will move to a new topic: another way to deal with NP-hard problems. We have already

More information

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle Directed Hamiltonian Cycle Chapter 8 NP and Computational Intractability Claim. G has a Hamiltonian cycle iff G' does. Pf. Suppose G has a directed Hamiltonian cycle Γ. Then G' has an undirected Hamiltonian

More information

Lecture 6 January 21, 2013

Lecture 6 January 21, 2013 UBC CPSC 536N: Sparse Approximations Winter 03 Prof. Nick Harvey Lecture 6 January, 03 Scribe: Zachary Drudi In the previous lecture, we discussed max flow problems. Today, we consider the Travelling Salesman

More information

Cographs; chordal graphs and tree decompositions

Cographs; chordal graphs and tree decompositions Cographs; chordal graphs and tree decompositions Zdeněk Dvořák September 14, 2015 Let us now proceed with some more interesting graph classes closed on induced subgraphs. 1 Cographs The class of cographs

More information

Branching. Teppo Niinimäki. Helsinki October 14, 2011 Seminar: Exact Exponential Algorithms UNIVERSITY OF HELSINKI Department of Computer Science

Branching. Teppo Niinimäki. Helsinki October 14, 2011 Seminar: Exact Exponential Algorithms UNIVERSITY OF HELSINKI Department of Computer Science Branching Teppo Niinimäki Helsinki October 14, 2011 Seminar: Exact Exponential Algorithms UNIVERSITY OF HELSINKI Department of Computer Science 1 For a large number of important computational problems

More information

Notes on MapReduce Algorithms

Notes on MapReduce Algorithms Notes on MapReduce Algorithms Barna Saha 1 Finding Minimum Spanning Tree of a Dense Graph in MapReduce We are given a graph G = (V, E) on V = N vertices and E = m N 1+c edges for some constant c > 0. Our

More information

Tree-width and algorithms

Tree-width and algorithms Tree-width and algorithms Zdeněk Dvořák September 14, 2015 1 Algorithmic applications of tree-width Many problems that are hard in general become easy on trees. For example, consider the problem of finding

More information

An Improved Approximation Algorithm for Virtual Private Network Design

An Improved Approximation Algorithm for Virtual Private Network Design An Improved Approximation Algorithm for Virtual Private Network Design Friedrich Eisenbrand Fabrizio Grandoni Abstract Virtual private network design deals with the reservation of capacities in a network,

More information

Differential approximation results for the Steiner tree problem

Differential approximation results for the Steiner tree problem Differential approximation results for the Steiner tree problem Marc Demange, Jérôme Monnot, Vangelis Paschos To cite this version: Marc Demange, Jérôme Monnot, Vangelis Paschos. Differential approximation

More information

The minimum G c cut problem

The minimum G c cut problem The minimum G c cut problem Abstract In this paper we define and study the G c -cut problem. Given a complete undirected graph G = (V ; E) with V = n, edge weighted by w(v i, v j ) 0 and an undirected

More information

Math 110 Test # 1. The set of real numbers in both of the intervals [0, 2) and ( 1, 0] is equal to. Question 1. (F) [ 1, 2) (G) (2, ) (H) [ 1, 2]

Math 110 Test # 1. The set of real numbers in both of the intervals [0, 2) and ( 1, 0] is equal to. Question 1. (F) [ 1, 2) (G) (2, ) (H) [ 1, 2] Friday July 8, 00 Jacek Szmigielski Math 0 Test # Fill in the bubbles that correspond to the correct answers. No aids: no calculators, closed book. You are not permitted to consult with your fellow students

More information

Disconnecting Networks via Node Deletions

Disconnecting Networks via Node Deletions 1 / 27 Disconnecting Networks via Node Deletions Exact Interdiction Models and Algorithms Siqian Shen 1 J. Cole Smith 2 R. Goli 2 1 IOE, University of Michigan 2 ISE, University of Florida 2012 INFORMS

More information

Admin NP-COMPLETE PROBLEMS. Run-time analysis. Tractable vs. intractable problems 5/2/13. What is a tractable problem?

Admin NP-COMPLETE PROBLEMS. Run-time analysis. Tractable vs. intractable problems 5/2/13. What is a tractable problem? Admin Two more assignments No office hours on tomorrow NP-COMPLETE PROBLEMS Run-time analysis Tractable vs. intractable problems We ve spent a lot of time in this class putting algorithms into specific

More information

Approximation Algorithms for the k-set Packing Problem

Approximation Algorithms for the k-set Packing Problem Approximation Algorithms for the k-set Packing Problem Marek Cygan Institute of Informatics University of Warsaw 20th October 2016, Warszawa Marek Cygan Approximation Algorithms for the k-set Packing Problem

More information

Some Open Problems in Approximation Algorithms

Some Open Problems in Approximation Algorithms Some Open Problems in Approximation Algorithms David P. Williamson School of Operations Research and Information Engineering Cornell University February 28, 2011 University of Bonn Bonn, Germany David

More information

A Space Time Tradeoff for Permutation Problems

A Space Time Tradeoff for Permutation Problems A Space Time Tradeoff for Permutation Problems Mikko Koivisto Pekka Parviainen Abstract Many combinatorial problems such as the traveling salesman, feedback arcset, cutwidth, and treewidth problem can

More information

arxiv: v2 [cs.ds] 22 Jan 2014

arxiv: v2 [cs.ds] 22 Jan 2014 On r-simple k-path arxiv:1312.4863v2 [cs.ds] 22 Jan 2014 Hasan Abasi Nader H. Bshouty Ariel Gabizon Elad Haramaty Department of Computer Science Technion, Haifa June 15, 2018 Abstract An r-simple k-path

More information

Final Exam A Name. 20 i C) Solve the equation by factoring. 4) x2 = x + 30 A) {-5, 6} B) {5, 6} C) {1, 30} D) {-5, -6} -9 ± i 3 14

Final Exam A Name. 20 i C) Solve the equation by factoring. 4) x2 = x + 30 A) {-5, 6} B) {5, 6} C) {1, 30} D) {-5, -6} -9 ± i 3 14 Final Exam A Name First, write the value(s) that make the denominator(s) zero. Then solve the equation. 1 1) x + 3 + 5 x - 3 = 30 (x + 3)(x - 3) 1) A) x -3, 3; B) x -3, 3; {4} C) No restrictions; {3} D)

More information

Spanning trees with minimum weighted degrees

Spanning trees with minimum weighted degrees Spanning trees with minimum weighted degrees Mohammad Ghodsi Hamid Mahini Kian Mirjalali Shayan Oveis Gharan Amin S. Sayedi R. Morteza Zadimoghaddam Abstract Given a metric graph G, we are concerned with

More information

An Improved Approximation Algorithm for Requirement Cut

An Improved Approximation Algorithm for Requirement Cut An Improved Approximation Algorithm for Requirement Cut Anupam Gupta Viswanath Nagarajan R. Ravi Abstract This note presents improved approximation guarantees for the requirement cut problem: given an

More information

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle 8.5 Sequencing Problems Basic genres. Packing problems: SET-PACKING, INDEPENDENT SET. Covering problems: SET-COVER, VERTEX-COVER. Constraint satisfaction problems: SAT, 3-SAT. Sequencing problems: HAMILTONIAN-CYCLE,

More information

Randomness and Computation

Randomness and Computation Randomness and Computation or, Randomized Algorithms Mary Cryan School of Informatics University of Edinburgh RC (2018/19) Lecture 11 slide 1 The Probabilistic Method The Probabilistic Method is a nonconstructive

More information

A New Approach to Proving Upper Bounds for MAX-2-SAT

A New Approach to Proving Upper Bounds for MAX-2-SAT A New Approach to Proving Upper Bounds for MAX-2-SAT Arist Kojevnikov Alexander S. Kulikov Abstract In this paper we present a new approach to proving upper bounds for the maximum 2-satisfiability problem

More information

Improved Edge-Coloring with Three Colors

Improved Edge-Coloring with Three Colors Improved Edge-Coloring with Three Colors Łukasz Kowalik 1,2 1 Institute of Informatics, Warsaw University, Banacha 2, 02-097, Warsaw, Poland 2 Max-Planck-Institute für Informatik, Stuhlsatzenhausweg 85,

More information

CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT

CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT Definition: A language B is NP-complete if: 1. B NP 2. Every A in NP is poly-time reducible to B That is, A P B When this is true, we say B is NP-hard On

More information

Chapter 34: NP-Completeness

Chapter 34: NP-Completeness Graph Algorithms - Spring 2011 Set 17. Lecturer: Huilan Chang Reference: Cormen, Leiserson, Rivest, and Stein, Introduction to Algorithms, 2nd Edition, The MIT Press. Chapter 34: NP-Completeness 2. Polynomial-time

More information

Question 1. Find the coordinates of the y-intercept for. f) None of the above. Question 2. Find the slope of the line:

Question 1. Find the coordinates of the y-intercept for. f) None of the above. Question 2. Find the slope of the line: of 4 4/4/017 8:44 AM Question 1 Find the coordinates of the y-intercept for. Question Find the slope of the line: of 4 4/4/017 8:44 AM Question 3 Solve the following equation for x : Question 4 Paul has

More information

Tree Decompositions and Tree-Width

Tree Decompositions and Tree-Width Tree Decompositions and Tree-Width CS 511 Iowa State University December 6, 2010 CS 511 (Iowa State University) Tree Decompositions and Tree-Width December 6, 2010 1 / 15 Tree Decompositions Definition

More information

Theoretical Computer Science. An exact algorithm for the Maximum Leaf Spanning Tree problem

Theoretical Computer Science. An exact algorithm for the Maximum Leaf Spanning Tree problem Theoretical Computer Science 4 (0) 690 630 Contents lists available at SciVerse ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs An exact algorithm for the Maximum

More information

ACO Comprehensive Exam October 18 and 19, Analysis of Algorithms

ACO Comprehensive Exam October 18 and 19, Analysis of Algorithms Consider the following two graph problems: 1. Analysis of Algorithms Graph coloring: Given a graph G = (V,E) and an integer c 0, a c-coloring is a function f : V {1,,...,c} such that f(u) f(v) for all

More information

An exact algorithm for the Maximum Leaf Spanning Tree problem

An exact algorithm for the Maximum Leaf Spanning Tree problem An exact algorithm for the Maximum Leaf Spanning Tree problem Henning Fernau 1, Joachim Kneis 2, Dieter Kratsch 3, Alexander Langer 2, Mathieu Liedloff 4, Daniel Raible 1, and Peter Rossmanith 2 1 Universität

More information

Jens Vygen. New approximation algorithms for the TSP

Jens Vygen. New approximation algorithms for the TSP Jens Vygen New approximation algorithms for the TSP The traveling salesman problem (TSP) is probably the best known combinatorial optimization problem. Although studied intensively for sixty years, the

More information

Maximum Flow. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Maximum Flow 1 / 27

Maximum Flow. Jie Wang. University of Massachusetts Lowell Department of Computer Science. J. Wang (UMass Lowell) Maximum Flow 1 / 27 Maximum Flow Jie Wang University of Massachusetts Lowell Department of Computer Science J. Wang (UMass Lowell) Maximum Flow 1 / 27 Flow Networks A flow network is a weighted digraph G = (V, E), where the

More information

Connected Domination and Spanning Trees with Many Leaves

Connected Domination and Spanning Trees with Many Leaves Connected Domination and Spanning Trees with Many Leaves Yair Caro Douglas B. West Raphael Yuster Abstract Let G = (V, E) be a connected graph. A connected dominating set S V is a dominating set that induces

More information

Parameterized Algorithms for Max Colorable Induced Subgraph problem on Perfect Graphs

Parameterized Algorithms for Max Colorable Induced Subgraph problem on Perfect Graphs Parameterized Algorithms for Max Colorable Induced Subgraph problem on Perfect Graphs Neeldhara Misra 1, Fahad Panolan 2, Ashutosh Rai 2, Venkatesh Raman 2, and Saket Saurabh 2 1 Indian Institute of Science,

More information

d-dimensional Arrangement Revisited

d-dimensional Arrangement Revisited -Dimensional Arrangement Revisite Daniel Rotter Jens Vygen Research Institute for Discrete Mathematics University of Bonn Revise version: April 5, 013 Abstract We revisit the -imensional arrangement problem

More information

Applying block intersection polynomials to study graphs and designs

Applying block intersection polynomials to study graphs and designs Applying block intersection polynomials to study graphs and designs Leonard Soicher Queen Mary University of London CoCoA15, Colorado State University, Fort Collins, July 2015 Leonard Soicher (QMUL) Block

More information

Graph coloring, perfect graphs

Graph coloring, perfect graphs Lecture 5 (05.04.2013) Graph coloring, perfect graphs Scribe: Tomasz Kociumaka Lecturer: Marcin Pilipczuk 1 Introduction to graph coloring Definition 1. Let G be a simple undirected graph and k a positive

More information

Equitable Colorings of Corona Multiproducts of Graphs

Equitable Colorings of Corona Multiproducts of Graphs Equitable Colorings of Corona Multiproducts of Graphs arxiv:1210.6568v1 [cs.dm] 24 Oct 2012 Hanna Furmańczyk, Marek Kubale Vahan V. Mkrtchyan Abstract A graph is equitably k-colorable if its vertices can

More information

CS/COE

CS/COE CS/COE 1501 www.cs.pitt.edu/~nlf4/cs1501/ P vs NP But first, something completely different... Some computational problems are unsolvable No algorithm can be written that will always produce the correct

More information

Final Exam C Name i D) 2. Solve the equation by factoring. 4) x2 = x + 72 A) {1, 72} B) {-8, 9} C) {-8, -9} D) {8, 9} 9 ± i

Final Exam C Name i D) 2. Solve the equation by factoring. 4) x2 = x + 72 A) {1, 72} B) {-8, 9} C) {-8, -9} D) {8, 9} 9 ± i Final Exam C Name First, write the value(s) that make the denominator(s) zero. Then solve the equation. 7 ) x + + 3 x - = 6 (x + )(x - ) ) A) No restrictions; {} B) x -, ; C) x -; {} D) x -, ; {2} Add

More information

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)}

Preliminaries. Graphs. E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)} Preliminaries Graphs G = (V, E), V : set of vertices E : set of edges (arcs) (Undirected) Graph : (i, j) = (j, i) (edges) 1 2 3 5 4 V = {1, 2, 3, 4, 5}, E = {(1, 3), (3, 2), (2, 4)} 1 Directed Graph (Digraph)

More information

NP and Computational Intractability

NP and Computational Intractability NP and Computational Intractability 1 Polynomial-Time Reduction Desiderata'. Suppose we could solve X in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Reduction.

More information

Notes on Graph Theory

Notes on Graph Theory Notes on Graph Theory Maris Ozols June 8, 2010 Contents 0.1 Berge s Lemma............................................ 2 0.2 König s Theorem........................................... 3 0.3 Hall s Theorem............................................

More information

Graph. Supply Vertices and Demand Vertices. Supply Vertices. Demand Vertices

Graph. Supply Vertices and Demand Vertices. Supply Vertices. Demand Vertices Partitioning Graphs of Supply and Demand Generalization of Knapsack Problem Takao Nishizeki Tohoku University Graph Supply Vertices and Demand Vertices Supply Vertices Demand Vertices Graph Each Supply

More information

Vertex-Coloring Edge-Weighting of Bipartite Graphs with Two Edge Weights

Vertex-Coloring Edge-Weighting of Bipartite Graphs with Two Edge Weights Discrete Mathematics and Theoretical Computer Science DMTCS vol. 17:3, 2015, 1 12 Vertex-Coloring Edge-Weighting of Bipartite Graphs with Two Edge Weights Hongliang Lu School of Mathematics and Statistics,

More information

ECS122A Handout on NP-Completeness March 12, 2018

ECS122A Handout on NP-Completeness March 12, 2018 ECS122A Handout on NP-Completeness March 12, 2018 Contents: I. Introduction II. P and NP III. NP-complete IV. How to prove a problem is NP-complete V. How to solve a NP-complete problem: approximate algorithms

More information

Very few Moore Graphs

Very few Moore Graphs Very few Moore Graphs Anurag Bishnoi June 7, 0 Abstract We prove here a well known result in graph theory, originally proved by Hoffman and Singleton, that any non-trivial Moore graph of diameter is regular

More information

A Linear-Time Algorithm for the Terminal Path Cover Problem in Cographs

A Linear-Time Algorithm for the Terminal Path Cover Problem in Cographs A Linear-Time Algorithm for the Terminal Path Cover Problem in Cographs Ruo-Wei Hung Department of Information Management Nan-Kai Institute of Technology, Tsao-Tun, Nantou 54, Taiwan rwhung@nkc.edu.tw

More information

Combinatorial Enumeration. Jason Z. Gao Carleton University, Ottawa, Canada

Combinatorial Enumeration. Jason Z. Gao Carleton University, Ottawa, Canada Combinatorial Enumeration Jason Z. Gao Carleton University, Ottawa, Canada Counting Combinatorial Structures We are interested in counting combinatorial (discrete) structures of a given size. For example,

More information

The partial inverse minimum cut problem with L 1 -norm is strongly NP-hard. Elisabeth Gassner

The partial inverse minimum cut problem with L 1 -norm is strongly NP-hard. Elisabeth Gassner FoSP Algorithmen & mathematische Modellierung FoSP Forschungsschwerpunkt Algorithmen und mathematische Modellierung The partial inverse minimum cut problem with L 1 -norm is strongly NP-hard Elisabeth

More information

Bounds on the Traveling Salesman Problem

Bounds on the Traveling Salesman Problem Bounds on the Traveling Salesman Problem Sean Zachary Roberson Texas A&M University MATH 613, Graph Theory A common routing problem is as follows: given a collection of stops (for example, towns, stations,

More information

The Steiner k-cut Problem

The Steiner k-cut Problem The Steiner k-cut Problem Chandra Chekuri Sudipto Guha Joseph (Seffi) Naor September 23, 2005 Abstract We consider the Steiner k-cut problem which generalizes both the k-cut problem and the multiway cut

More information

Quadratic and Polynomial Inequalities in one variable have look like the example below.

Quadratic and Polynomial Inequalities in one variable have look like the example below. Section 8 4: Polynomial Inequalities in One Variable Quadratic and Polynomial Inequalities in one variable have look like the example below. x 2 5x 6 0 (x 2) (x + 4) > 0 x 2 (x 3) > 0 (x 2) 2 (x + 4) 0

More information

k-degenerate Graphs Allan Bickle Date Western Michigan University

k-degenerate Graphs Allan Bickle Date Western Michigan University k-degenerate Graphs Western Michigan University Date Basics Denition The k-core of a graph G is the maximal induced subgraph H G such that δ (H) k. The core number of a vertex, C (v), is the largest value

More information

Pre-Calculus Midterm Practice Test (Units 1 through 3)

Pre-Calculus Midterm Practice Test (Units 1 through 3) Name: Date: Period: Pre-Calculus Midterm Practice Test (Units 1 through 3) Learning Target 1A I can describe a set of numbers in a variety of ways. 1. Write the following inequalities in interval notation.

More information

Quantum Algorithms for Graph Traversals and Related Problems

Quantum Algorithms for Graph Traversals and Related Problems Quantum Algorithms for Graph Traversals and Related Problems Sebastian Dörn Institut für Theoretische Informatik, Universität Ulm, 89069 Ulm, Germany sebastian.doern@uni-ulm.de Abstract. We study the complexity

More information

Geometric Steiner Trees

Geometric Steiner Trees Geometric Steiner Trees From the book: Optimal Interconnection Trees in the Plane By Marcus Brazil and Martin Zachariasen Part 3: Computational Complexity and the Steiner Tree Problem Marcus Brazil 2015

More information

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016) The final exam will be on Thursday, May 12, from 8:00 10:00 am, at our regular class location (CSI 2117). It will be closed-book and closed-notes, except

More information

From Primal-Dual to Cost Shares and Back: A Stronger LP Relaxation for the Steiner Forest Problem

From Primal-Dual to Cost Shares and Back: A Stronger LP Relaxation for the Steiner Forest Problem From Primal-Dual to Cost Shares and Back: A Stronger LP Relaxation for the Steiner Forest Problem Jochen Könemann 1, Stefano Leonardi 2, Guido Schäfer 2, and Stefan van Zwam 3 1 Department of Combinatorics

More information

Reference Material /Formulas for Pre-Calculus CP/ H Summer Packet

Reference Material /Formulas for Pre-Calculus CP/ H Summer Packet Reference Material /Formulas for Pre-Calculus CP/ H Summer Packet Week # 1 Order of Operations Step 1 Evaluate expressions inside grouping symbols. Order of Step 2 Evaluate all powers. Operations Step

More information

Improved Algorithms for Path, Matching, and Packing Problems

Improved Algorithms for Path, Matching, and Packing Problems Improved Algorithms for Path, Matching, and Packing Problems Jianer Chen Songjian Lu Sing-Hoi Sze Fenghui Zhang Abstract Improved randomized and deterministic algorithms are presented for path, matching,

More information

The Polymatroid Steiner Problems

The Polymatroid Steiner Problems The Polymatroid Steiner Problems G. Calinescu 1 and A. Zelikovsky 2 1 Department of Computer Science, Illinois Institute of Technology, Chicago, IL 60616. E-mail: calinesc@iit.edu. 2 Department of Computer

More information

On the Exponent of the All Pairs Shortest Path Problem

On the Exponent of the All Pairs Shortest Path Problem On the Exponent of the All Pairs Shortest Path Problem Noga Alon Department of Mathematics Sackler Faculty of Exact Sciences Tel Aviv University Zvi Galil Department of Computer Science Sackler Faculty

More information

The uniqueness problem for chromatic symmetric functions of trees

The uniqueness problem for chromatic symmetric functions of trees The uniqueness problem for chromatic symmetric functions of trees Jeremy L. Martin (University of Kansas) AMS Western Sectional Meeting UNLV, April 18, 2015 Colorings and the Chromatic Polynomial Throughout,

More information

NP Completeness. CS 374: Algorithms & Models of Computation, Spring Lecture 23. November 19, 2015

NP Completeness. CS 374: Algorithms & Models of Computation, Spring Lecture 23. November 19, 2015 CS 374: Algorithms & Models of Computation, Spring 2015 NP Completeness Lecture 23 November 19, 2015 Chandra & Lenny (UIUC) CS374 1 Spring 2015 1 / 37 Part I NP-Completeness Chandra & Lenny (UIUC) CS374

More information

5 Flows and cuts in digraphs

5 Flows and cuts in digraphs 5 Flows and cuts in digraphs Recall that a digraph or network is a pair G = (V, E) where V is a set and E is a multiset of ordered pairs of elements of V, which we refer to as arcs. Note that two vertices

More information