10 likes | 155 Views
Cut-and-Traverse: A new Structural Decomposition Method for CSPs Yaling Zheng and Berthe Y. Choueiry Constraint Systems Laboratory • Computer Science & Engineering • University of Nebraska-Lincoln • yzheng, choueiry@cse.unl.edu. Tree-Structured Decompositions.
E N D
Cut-and-Traverse: A new Structural Decomposition Method for CSPs Yaling Zheng and Berthe Y. Choueiry Constraint Systems Laboratory • Computer Science & Engineering • University of Nebraska-Lincoln • yzheng, choueiry@cse.unl.edu • Tree-Structured Decompositions • Cut-and-Traverse (CaT) Decomposition • Conclusions • Cut Decomposition • Future work Hypertree [7] Hinge + Tree Clustering [4] Biconnected Component + Hinge + Hypertree [10] Traverse Cut-and-Traverse Hinge+ Cut Hinge [4] Tree Clustering Treewidth [6] Biconnected Component [3] • Constraint Hypergraph • Hinge+ Decomposition • Contribution in Context • General principal • Decompose a CSP into sub-problems connected in a tree structure • Compute a constraint tree T equivalent to the hypergraph of the CSP • Each node in T contains one or more constraints of original CSP • Solve each sub-problem (all solutions), usually by a join operation. • Apply directional arc-consistency to the constraint tree T. • Find a solution for the CSP using backtrack-free search. • Goal: a decomposition technique that is efficient and minimizes width of tree • Cut-and-Traverse decomposition has the following steps: • Decompose the constraint hypergraph using cut decomposition. • The cut decomposition results in a constraint tree T. • 2. For each tree node T, traverse it. • If the tree node does not contain any cut, then traverse it from an arbitrary hyperedge. • If the tree node contains one cut C1, then traverse it from C1. • If the tree node contains two cuts C1 and C2, then traverse it from C1 to C2. • 3. Combine the traverse results. Cut decomposition: A restricted hinge+ decomposition. During the process of decomposition, every sub constraint hypergraph contains at least 2 cuts. This constraint tree is not a cut decomposition because the node {s4, s5, s6, s11, s12} contains 3 cuts: {s4, s5}, {s6, s12}, and {s11}. A Cut-and-Traverse decomposition of Hcg. Cut limit size is 2. Width of the join tree is 2. Applying cut decomposition to Hcg. • All these decomposition methods can be performed in polynomial time. • Traverse Decomposition Hinge+ decomposition O(|V||E|k+1) Cut decompositionO(|V||E|k+1) Traverse decompositionO(|V||E|2) Cut-and-Traverse decompositionO(|V||E|k+1) k is the limit size for cuts • Hinge+ decomposition: An improvement to hinge decomposition • Cut decomposition: A hinge+ decomposition bounded by the number of cuts • Traverse decomposition: Based on a simple sweep of the constraint hypergraph • Cut-and-Traverse decomposition: A combination of the cut and traverse decompositions • We traverse a constraint hypergraph from a set F of hyperedges, until all the hyperedges are visited as follows: • Start from Fs, mark all hyperedges whose vertices contained in Fs as ‘visited.’ • Then traverse to Fs’s unvisited neighbors F1, mark all hyperedges whose vertices contained in F1 as ‘visited.’ • Then traverse to F1’s unvisited neighbors F2, mark all hyperedges whose vertices contained in F2 as ‘visited.’ • Continuously traversing until all the hyperedges are visited. • Hinge+ decomposition strongly generalizes hinge decomposition. • Cut-and-traverse strongly generalizes cut decomposition. • Hypertree decomposition strongly generalizes hinge+ decomposition, traverse decomposition, Cut-and-Traverse decomposition. A traverse decomposition for Hcg starting from {s1}. Width of the join tree is 3. A constraint hypergraph Hcg . • Empirically evaluate and compare the new proposed decomposition methods on randomly generated constraint hypergraphs. • Compare cut-and-traverse decomposition method with • hinge decomposition + tree clustering method, and • hinge decomposition + biconnected component + hypertree decomposition. • We traverse a constraint hypergraph from a set Fsof hyperedges to another set of hyperedges Fd as follows: • Start from Fs, mark all hyperedges whose vertices contained in Fs as ‘visited.’ • Then traverse to Fs’s ‘unvisited’ neighborsand thosehyperedges in Fdthat has common vertices with Fs, we denote them as F1, mark all hyperedges whose vertices contained in F1 as ‘visited.’ • Then traverse to F1’s ‘unvisited’ neighborsand thosehyperedges in Fdthat has common vertices with F1, we denote them as F2, mark all hyperedges whose vertices contained in F2 as ‘visited.’ • Continuously traversing until traversing to Fd and all the hyperedges are visited. • Given a constraint hypergraph H = (V, E) where H is connected and |E| ≥ k+1. We call ak-cut of H a set F of hyperedges that satisfies the following conditions: • F is a subset of E and |F| = k, and • The remaining constraint hypergraph H1, …, Hq has at least 2 components. • References • Gottlob, G., Leone, N., Scarcello, F. : On Tractable Queries and Constraints. In: 10th International Conference and Workshop on Database and Expert System Applications (DEXA 1999). (1999) • Decther, R.: Constraint Processing. Morgan Kaufmann (2003) • Freuder, E.C.: A Sufficient Condition for Backtrack-Bounded Search. JACM 32 (4) (1985) • Gyssens, M., Jeavons, P.G., Cohen, D.A.: Decomposing Constraint Satisfaction Problems using Database Techniques. Artificial Intelligence 38 (1989) • Jeavons, P.G., Cohen, D.A., Gyssens, M. : A structural Decomposition for Hypergraphs. Contemporary Mathematics 178 (1994) • Decther, R., Pearl. J: Tree Clustering for Constraint Networks. Artificial Intelligence 38 (1998) Gottlob, G., Leone, N., Scarcello, F.: Hypertree Decompositions and Tractable Queries. Journal of Computer and System Sciences 64 (2002) • Harvey, P., Ghose, A.: Reducing Redundancy in the Hypertree Decomposition Scheme. IEEE International Conference on Tools with Artificial Intelligence (ICTAI 03). (2003) • Gottlob, G., Leone, N., Scarcello, F.: A comparison of Structural CSP Decomposition Methods. Artifical Intelligence 124 (2000) • Gottlob, G., Hutle, M., Wotawa, F.: Combining Hypertree, Bicomp, And Hinge Decomposition. ECAI 02 (2002) • Zheng, Y., Choueiry B.Y.: Cut-and-Traverse: A New Structural Decomposition Strategy for Finite Constraint Satisfaction Problems. CSCLP 04 (2004). • Hinge decomposition of Hcg • Hinge decomposition continuously finds 1-cut in in Hcg • Width of the 1-hinge tree to the right is 12. A traverse decomposition for Hcg starting from {s1, s2} to {s9, s16}. Width of the join tree is 3. Applying hinge decomposition to Hcg. Notice that traverse decomposition cannot guarantee a good decomposition result. The result of the decomposition depends on the starting set of hyperedges and ending set of hyperedges. The following graph shows a bad traverse decomposition. Hinge+ decomposition of Hcg • After finding all the 1-cuts, we continuously find 2-cuts in Hcg. • When there are multiple 2-cuts, we choose the one that yields the best division (i.e., the size of the largest sub-problem is the smallest). • Width of the 2-hinge+ tree below is 5. A traverse decomposition for Hcg starting from {s6, s9, s12}. Width of the join tree is 10. This research is supported by CAREER Award #0133568 from the National Science Foundation. Applying hinge+ decomposition to Hcg. September 8, 2004