Title: Cut-and-Traverse: A new Structural Decomposition Method for CSPs
1Cut-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_at_cse.unl.edu
- 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(VEk1) Cut
decomposition O(VEk1) Traverse
decompositionO(VE2) Cut-and-Traverse
decompositionO(VEk1) 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 Fss unvisited neighbors F1,
mark all hyperedges whose vertices contained in
F1 as visited. - Then traverse to F1s 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 Fs
of 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 Fss unvisited neighbors and
those hyperedges in Fd that has common vertices
with Fs, we denote them as F1, mark all
hyperedges whose vertices contained in F1 as
visited. - Then traverse to F1s unvisited neighbors and
those hyperedges in Fd that 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 k1. We call a k-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