Download presentation
Presentation is loading. Please wait.
1
16:36MCS - WG20041 On the Maximum Cardinality Search Lower Bound for Treewidth Hans Bodlaender Utrecht University Arie Koster ZIB Berlin
2
16:36MCS - WG20042 Maximum Cardinality Search is fun!
3
16:36MCS - WG20043 Contents Introduction –Treewidth –Maximum Cardinality Search –Lucena’s result Complexity Bounds on planar graphs Comparison with degeneracy lower bound Heuristics and experiments Conclusions
4
16:36MCS - WG20044 Treewidth Treewidth of graph = smallest width of tree decomposition ( no definition today !) Many problems have treewidth-based algorithm with running time exponential only in treewidth –E.g.: Probabilistic inference, frequency assignment Method to solve problems –Make tree decomposition of G with small width –Run `dynamic programming-like’ algorithm on tree decomposition
5
16:36MCS - WG20045 Computing treewidth and tree decomposition We need algorithms to find tree decompositions and determine treewidth Theoretical solutions often not useable Experimental work: –Preprocessing –Upper bound heuristics –Branch and bound –ILP methods –Lower bounds
6
16:36MCS - WG20046 Lower bounds Inform about quality of upper bounds Help to speed up Branch and Bound and ILP methods –Degeneracy –Ramachandramurthi bound –Clautiaux et. al technique –Contraction technique –Lucena (2003): MCS-lower bound } Can be combined with other lower bound methods
7
16:36MCS - WG20047 Recognizing chordal graphs Rose, Tarjan, Lueker, 1976: Lexicographic Breadth First Search Tarjan, Yannakakis, 1984: Maximum Cardinality Search –Used later also as triangulation heuristic / upper bound heuristic for treewidth –M-variant by Berry, Blair, Heggernes (2002)
8
16:36MCS - WG20048 Maximum Cardinality Search Simple mechanism to make a permutation of the vertices of an undirected graph Let the visited degree of a vertex be its number of visited neighbors the maximum visited degree of a graph is the maximum over all MCS- orderings of the maximum visited degree of a vertex in the ordering. Pseudocode for MCS: –First, all vertices are unvisited –Repeat Visit an unvisited vertex that has the largest visited degree –Until all vertices are visited
9
16:36MCS - WG20049 Example: a 4-clique with one subdivision a b c d e
10
16:36MCS - WG200410 We can start at any vertex: each vertex has 0 visited neighbors 0 0 0 0 0 a b c d e a, …
11
16:36MCS - WG200411 Say, we start at a 0 1 1 0 1 a b c d e a, … The next vertex must be b, c, or d. It can not be e.
12
16:36MCS - WG200412 After b, we must visit c. 0 1 2 1 1 a b c d e a, b, …
13
16:36MCS - WG200413 And then d 0 1 2 1 2 a b c d e a, b, c, …
14
16:36MCS - WG200414 And finally e 0 1 2 1 2 a b c d e a, b, c, d, …
15
16:36MCS - WG200415 We made an MCS- ordering of the graph 0 1 2 2 2 a b c d e a, b, c, d, e …
16
16:36MCS - WG200416 Lucena’s theorem (SIAM J. Disc. Math, 2003): The treewidth of a graph is at least its visited degree. Task : find an MCS-ordering such that the largest visited degree of a vertex is as large as possible.
17
16:36MCS - WG200417 Different orderings can give different maximum visited degree 0 1 0 0 1 a b c d e e, …
18
16:36MCS - WG200418 1 1 1 0 1 a b c d e, b, …
19
16:36MCS - WG200419 2 1 2 0 1 a b c d e, b, d, …
20
16:36MCS - WG200420 3 1 2 0 1 a b c d e, b, d, c, …
21
16:36MCS - WG200421 a has visited degree 3, so the treewidth is at least 3 3 1 2 0 1 a b c d e, b, d, c, …
22
16:36MCS - WG200422 Some easy cases Clique: maximum visited degree n – 1. Grid: maximum visited degree 2.
23
16:36MCS - WG200423 Complexity Instance: graph G, integer k Question: is the maximum visited degree of G at least k? Is an NP-complete problem Can not be approximated in polynomial time with constant ratio unless P=NP –Construction: a graph that has maximum visited degree at least k when a 3-sat formula can be satisfied, and maximum visited degree at most 6 otherwise.
24
16:36MCS - WG200424 Planar graphs Example of planar graph with O(k!) vertices and with maximum visited degree k. Upper bound O(log n) on maximum visited degree of planar graphs with n vertices
25
16:36MCS - WG200425 0 Example: planar graphs can have large maximum visited degree
26
16:36MCS - WG200426 01 Start in bottom row, and visit vertices on bottom row first
27
16:36MCS - WG200427 011
28
16:36MCS - WG200428 0111
29
16:36MCS - WG200429 01111
30
16:36MCS - WG200430 011111
31
16:36MCS - WG200431 0111111
32
16:36MCS - WG200432 01111111
33
16:36MCS - WG200433 011111111
34
16:36MCS - WG200434 0111111111
35
16:36MCS - WG200435 01111111111
36
16:36MCS - WG200436 011111111111
37
16:36MCS - WG200437 Next row 1 011111111111
38
16:36MCS - WG200438 Visited degree 2 12 011111111111
39
16:36MCS - WG200439 122 011111111111
40
16:36MCS - WG200440 1222 011111111111
41
16:36MCS - WG200441 12222 011111111111
42
16:36MCS - WG200442 122222 011111111111
43
16:36MCS - WG200443 1222222 011111111111
44
16:36MCS - WG200444 12222222 011111111111
45
16:36MCS - WG200445 122222222 011111111111
46
16:36MCS - WG200446 1222222222 011111111111
47
16:36MCS - WG200447 1222222222 0111111111 2 11
48
16:36MCS - WG200448 1222222222 0111111111 22 11
49
16:36MCS - WG200449 2 1222222222 0111111111 22 11 Third row
50
16:36MCS - WG200450 23 1222222222 0111111111 22 11 Visited degree 3
51
16:36MCS - WG200451 233 1222222222 0111111111 22 11
52
16:36MCS - WG200452 2333 1222222222 0111111111 22 11
53
16:36MCS - WG200453 23333 1222222222 0111111111 22 11
54
16:36MCS - WG200454 233333 1222222222 0111111111 22 11
55
16:36MCS - WG200455 2333333 1222222222 0111111111 22 11
56
16:36MCS - WG200456 23333333 1222222222 0111111111 22 11
57
16:36MCS - WG200457 323333333 1222222222 0111111111 22 11
58
16:36MCS - WG200458 3323333333 1222222222 0111111111 22 11
59
16:36MCS - WG200459 3323333333 1222222222 0111111111 3 22 11 End of 3rd row
60
16:36MCS - WG200460 33 3 23333333 1222222222 0111111111 3 22 11 4th row
61
16:36MCS - WG200461 33 43 23333333 1222222222 0111111111 3 22 11 Visited degree 4
62
16:36MCS - WG200462 33 443 23333333 1222222222 0111111111 3 22 11
63
16:36MCS - WG200463 3 4 3 443 23333333 1222222222 0111111111 3 22 11
64
16:36MCS - WG200464 4 3 4 3 443 23333333 1222222222 0111111111 3 22 11
65
16:36MCS - WG200465 4 3 4 3 443 23333333 1222222222 5 0111111111 3 22 11 And reaching a node with visited degree 5 Generalizes to larger values
66
16:36MCS - WG200466 Upper bound for planar graphs Planar graphs have visited degree O(log n). Let G be a planar graph with an MCS with visited degree k, of minimum size. At each point: –The set of visited vertices is connected –By minimality: the set of unvisited vertices is connected.
67
16:36MCS - WG200467 Definition: Last successor The last successor of a vertex v is its last visited neighbor, if it is visited later than v. If all neighbors of v are visited before v, v has no last successor. Edges from vertices to last successors form a forest.
68
16:36MCS - WG200468 Lemma If v has visited degree l 6, then there are two vertices w and x with v the last successor of w and of x, and the visited degree of w and x at least l – 4.
69
16:36MCS - WG200469 Proof Look at set S of last four neighbors of v, visited before v. Each has visited degree at least l – 4, otherwise v is visited earlier. Look at subgraph of visited vertices. W.l.o.g., suppose unvisited vertices are in exterior face. If vertex from S is not at exterior face, v is its last successor. We cannot have three vertices from S at exterior face. v After z is visited, we must visit v (v.d. 2) instead of vertex in unvisited part with v.d. 1. z
70
16:36MCS - WG200470 Proof of upper bound Look at forest of edges to last successor. Each node of vd l > 5 has two children with vd at least l – 4. There is a node with vd k. Forest, and hence G must have more than 2 k/4-1 vertices, so k = O(log n).
71
16:36MCS - WG200471 MCS lower bound is bad for planar graphs Treewidth of planar graphs can be ( n 1/2 ). Can be approximated with ratio 1.5 (Seymour & Thomas, Hicks) MCS gives O( log n)
72
16:36MCS - WG200472 Degeneracy Degeneracy or MMD: –Maximum over all subgraphs H of G of minimum degree of vertex in H –Lower bound on treewidth –Easily computable in O(|V|+|E|) time
73
16:36MCS - WG200473 Degeneracy versus maximum visited degree Maximum visited degree never smaller than degeneracy –Consider last visited vertex of subgraph with large minimum degree Maximum visited degree sometimes larger than degeneracy –Planar graphs have degeneracy at most 5. –Example shows planar graphs with MCS with large maximum visited degree
74
16:36MCS - WG200474 Heuristics Three heuristics for tie-breaking MCS: –First –Largest degree –Smallest degree Heuristics that gives upper bound on maximum visited degree (omitted from talk) } Give lower bound on maximum visited degree, hence on treewidth
75
16:36MCS - WG200475 Graphs also used in other experiments. Three cases give matching bounds. Default is never outperformed! Improvements are incremental.
76
16:36MCS - WG200476 Conclusions MCS gives incremental improvement to existing lower bounds for treewidth Interesting combinatorial questions Additional techniques (contraction, Clautiaux- et.al technique) can give considerable improvements Sometimes still big gaps, e.g., (close to) planar graphs
77
16:36MCS - WG200477 Thank you! Questions?
78
16:36MCS - WG200478 Results Barley-pp50.006 5 6 7 Link40.0053.6547.7957.8925 Link-pp60.0160.6061.2761.2027 Munin1-pp40.0050.0250.0450.0517 Munin2-pp40.0050.1550.3050.298 Munin3-pp40.0050.0540.105 17 Oesoca+-pp90.00100.009 100.0011 Pathfinder-pp50.006 5 6 6 Pignet2-pp50.0167.59617.42618.02239 network MMD UPB MCS-defMCS-maxMCS-min Water-pp60.008 7 80.0110
79
16:36MCS - WG200479 Upper bound heuristic Each vertex v has upper bound u(v) variable –Invariant: u(v) maximum visited degree of v Try to improve upper bounds until no longer possible: –Compute set UN(v) of u(w) of neighbors w of v –Sort UN(v), say: d 1, …, d r. l = 0. –For i = 1 to r do if d i l then l++ –Set u(v) = min { u(v), l } If v is visited with visited degree k, then v has neighbors w 1, …, w k with w i visited before v with visited degree at least i – 1.
80
16:36MCS - WG200480 More on upper bound heuristic Improvement: looking at maximum visited degree when v has a neighbor that is visited later Improvement 2: looking at maximum visited degree when v is visited before neighbor w: a bound per edge
81
16:36MCS - WG200481 Bounds of upper bound heuristics MCSLB ub1cpuub2cpu link5 11 0.02 10 0.01 link-pp6 10 0 9 0.02 munin14 7 0 6 0.01 munin1-pp5 8 0 7 0 pignet25 9 0.41 8 0.16 pignet2-pp6 11 0.06 9 celar06pp11 16 0.01 16 0 graph118 13 0.01 13 0.01 graph11-pp9 14 0 13 0.01 graph138 14 0.01 13 0.01 graph13-pp8 14 0.01 12 0.02 Instance MCSLB-max ub3cpu 10 0.05 9 0.02 6 0.01 7 0 8 0.16 9 0.06 16 0 13 0.01 13 0.01 13 0.01 12 0.02
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.