1 / 70

Graph Searching and Related Problems

Graph Searching and Related Problems. 中央研究院 資訊科學研究所 高明達. Graph Searching Problems. Input: A graph is looked as a system of contaminated tunnels. Goal: To find a strategy using the least number of searchers to clear the entire graph. Graph Searching Problems. Operations

Download Presentation

Graph Searching and Related Problems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Graph Searching and Related Problems 中央研究院 資訊科學研究所 高明達 中山大學資訊工程研究所

  2. Graph Searching Problems Input: A graph is looked as a system of contaminated tunnels. Goal: To find a strategy using the least number of searchers to clear the entire graph.

  3. Graph Searching Problems • Operations • Place Remove Move • Clearing rules • movealong an edge • guardthe two endpoints of an edge • Recontamination • a cleared edge connects a contaminated edge bya path with no searcher • Versions: • Operations Rule • Edge place move • remove • move • Node place guard • remove • Mixed place both • remove • move

  4. Searching Strategy Node search number =3 Edge search number = 2 There exists an optimal search strategy without recontamination.

  5. Equivalent Problems • Node searching problem is equivalent to • Interval thickness problem • Gate matrix layout problem • Vertex separation problem • Narrowness problem • Path-width problem

  6. Interval Thickness Problem • Given a graph G=(V, E), find an interval graph G’= (V, E’), E  E’, such that the maximum clique of G’ is minimum. C D A B C D E F A B E F

  7. Gate Matrix Layout Problem • Given a gate matrix, each column represents a gate and each row represents a net, the problem is to permute the columns such that the nets can be arranged in minimal number of tracks.

  8. A D B F C E A C F B D E

  9. incompatible graph G1G2 G3G5 G6G4 G7G8 A B C D E F C D G6 G3 G4 G2 G5 G7 A B E F

  10. Vertex Separation Problem • G=(V, E) • Linear layout: L: V {1, 2, …, |V|} • VL(i) = {u|L(u)  i, w, L(w)>i, (u, w)E}. • vsL(G) = maxi{|VL(i)|} • vs(G) = minLvsL(G)

  11. e h a d a b e d c f g h g f V(1) = {a} V(2) = {a, b} V(3) = {a, b, e} V(4) = {a, e, d} V(5) = {d, e} V(6) = {e, f} V(7) = {e, f} V(8) = {} c b a b e d c f g h c a d b e f h g V(1) = {c} V(2) = {a} V(3) = {d} V(4) = {d} V(5) = {d, e} V(6) = {e, f} V(7) = {e, f} V(8) = {} c a d b e f h g

  12. Narrowness Problem Outer Memory Inner Memory Shack in-sequence out-sequence Limited Short term memory constraint: A vertex can be moved from the shack to OM only if all of the vertices connected to it by an arc are also in the shack or already in OM.

  13. c h a d g f b e Narrowness Problem In-sequence b a d e c f h g b a e d ch fg Out-sequence In-sequence a b c e d f h g b ae d ch fg Out-sequence

  14. Path-width Problem Path decomposition of G=(V, E): • X={X1, X2, …, Xn}, Xi V,  1 i  n. •  (a, b)E, i such that {a, b}  Xi. •  i < j < k, Xi Xk Xj. Path-width of G = minXmaxi{|Xi|-1} C D A B E F X ={{A, B}, {B, C, E}, {C, D, E}, {E, F}}

  15. Tree-width Problem Tree decomposition of G=(V, E): • X={X1, X2, …, Xn}, Xi V,  1 i  n. •  (a, b)E, i such that {a, b}  Xi. • Xi, Xj,Xk,Xj is on the path fromXi to Xk,Xi Xk Xj. Tree-width of G = minXmaxi{|Xi|-1} Tree decomposition is equivalent to the embedding into a chordal graph.

  16. A computing paradigm based on tree decomposition using dynamic programming. • Maximum independent set problem • Maximum clique problem • Pathwidth problem • Minimum fill-in problem • Minimum dominating set problem • Hamiltonian cycle problem • Minimum coloring problem • Minimum edge coloring problem • ……………………

  17. Maximum Independent Set I: an independent set of [X7] {Xi}= subgraph induced by Xi and its descendents. Ii= I  [Xi], i = 5. 6. {Ii} the MIS containing Ii in {Xi}. X7 X6 X5 X1 X2 X3 X4 {I} = I  {I5}  {I6}

  18. Bounded treewidth graphs have linear time algorithm for the decision problem of pathwidth problem. • Tree • serial-parallel graphs • cactus graphs • partial 2-tree

  19. Previous Results

  20. Previous Results

  21. Previous Results on Trees • Search number: O(n) • Search strategy:O(n logn) O(n) • Node search: • R. H. Moehring 1990, P. Scheffler 1990, J. Ellis, I. Sudborough, J. Turner 1994

  22. Branch Ttv v t

  23. Three-Branch Lemma • [Pa76,Sc90, EST94, TUK95] For any tree T, s(T) k+1, k ≧ 2 if and only if there exists a vertex t with at least three branches Ttu, Ttv, Ttw such that s(Ttu)≧k, s(Ttv)≧k, s(Ttw)≧k. k +1 k k k

  24. σ = 3 σ = 3 σ = 2 Node Search Example Node search number = 3

  25. Avenue • [MHGJP88] A path P is an avenue of Tif the following conditions hold: • For every path branch T ’ at P, (T ’) = (T), • For every non-path branch T ’ at P, (T ’) < (T). • [MHGJP88] For any tree T, T has an avenue. If the length of the avenue is at least two, then the avenue is unique.

  26. Avenue (T) = k <k <k =k k= <k

  27. Example (Node) Avenue branch Non-avenue branch

  28. Extended Avenue • A path P is an extended avenue of Tif the following conditions hold: • For every path branch T ’ at P, (T ’) (T), • For every non-path branch T ’ at P, (T ’) < (T). • An extended avenue must contain the avenue of the tree.

  29. Extended Avenue

  30. Avenue System • If T is a basis, then • If T is not a basis: where GP is the set of nonpath branches of P.

  31. Avenue System (Node)

  32. Searching Strategy (Node)

  33. Avenue Tree

  34. Avenue Tree • Let P  A(T) and TP denote the branch in F(A(T)) with P as its main avenue. • A(T) is the set of nodes of the logical avenue tree. • P is the parent of Q if and only if TPis a non-path branch of Q.

  35. Avenue Tree Construction • Look tree T as a rooted tree. • Labeling algorithm • Avenue tree construction

  36. Labeling Algorithm • A vertex u is k-critical if the subtree rooted at u is of s(Tu)=k and there exists exactlytwo children v and w of u such that s(Tv)=k and s(Tw)=k. u v w <k <k k k

  37. Labeling Algorithm Label Critical vertices up= u u2 u1 u3

  38. Labeling Algorithm (case 1) (k+1)’ If more than 2 children of s = k Then s = (k+1)’ k k k

  39. k k k Labeling Algorithm (case 2) (k+1)’ If exactly 2 children of s = k and one of them contains a k-critical vertex Then s = (k+1)’ k’ < k k

  40. Labeling Algorithm (case 3) k If exactly 2 children of s = k and none of them contain a k-critical vertex Then s = k k’ k’ < k < k

  41. x k k k Labeling Algorithm (case 4) (k+1)’ If exactly 1 children of s = k and it contains a k-critical vertex x and s(Tu[x]) =k Then s = (k+1)’ k < k < k x: k-critical : Tu[x]

  42. x k k k Labeling Algorithm (case 5) k If exactly 1 children of s = k and it contains a k-critical vertex x and s(Tu[x]) < k Then s = k < k k < k x: k-critical : Tu[x]

  43. Labeling Algorithm (case 6) k’ If exactly 1 children of s = k and it contains no k-critical vertex Then s = k’ < k k’ < k

  44. Running Example (8,7,6‘) (8,2‘) (4,2‘) (7,5,3,2‘) critical vertex (4) (8) (4) (5) (7) (3) (4‘) (4‘)

  45. (8,7,6‘) (8,2‘) (4,2‘) ( 7,5,3,2‘) (4) (8) (5) (7) (3) Avenue Tree Construction Pointer Assignment (before)

  46. (8,7,6‘) (8,2‘) (4,2‘) ( 7,5,3,2‘) (4) (8) (5) (7) (3) Avenue Tree Construction Pointer Assignment (after)

  47. Notation Let u be the root with children v1, …, vk. l = (a1, …, ap) : the label of u. li : the label of vi for i = 1, …,k. li’: the elements of liwhich is greater than ap. bi : bi is the maximal element in li no greater than ap. ui: the vertex corresponding to bi. Then

  48. Pointer Assignment a1 a2…… ap-1 ap w1 w2 …… wp-1 wp u1 b1 u2 b2 : : : : uk bk

  49. Main Theorem An optimal searching strategy on trees can be constructed in linear time.

  50. Block Graphs • Ablock graphis a graph in which every • block is a clique. Block-cut- vertex tree

More Related