140 likes | 356 Views
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition. Shant Karakashian , Robert Woodward & Berthe Y. Choueiry Constraint Systems Laboratory University of Nebraska-Lincoln Acknowledgments:
E N D
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition ShantKarakashian, Robert Woodward & Berthe Y. Choueiry Constraint Systems Laboratory University of Nebraska-Lincoln Acknowledgments: Experiments conducted at UNL’s Holland Computing Center NSF Award RI-111795
Outline • Introduction • Background • Tree decomposition • Relational consistency property R(∗,m)C • Key ideas • Localize consistency to clusters of a tree decomposition • Bolstering propagation at separators • Evaluation • Theoretical: Comparing resulting consistency properties • Empirical: Solving CSPs in a backtrack-free manner • Conclusions & Future Work
Introduction • Constraint Satisfaction Problems (CSPs) • NP-complete in general • Islands of tractability are classes of CSPs solvable in polynomial time • One tractabilityconditionlinks [Freuder 82] • Consistency level to • Width of the constraint network, a structural parameter • Our approach: exploit a tree decomposition • Localize application of the consistency algorithm • Add redundant constraints at separators to enhance propagation • Practicaltractability aims to solve CSP instances in a backtrack-free manner
Tree Decomposition C1 {A,B,C,E} , {R2,R3} C3 C2 {A,E,F},{R1} {A,B,D},{R3,R5} D C4 • A tree decomposition:〈T, 𝝌, 𝜓〉 • T: a tree of clusters • 𝝌: maps variables to clusters • 𝜓: maps constraints to clusters • Conditions • Each constraint appears in at least one cluster with all the variables in its scope • For every variable, the clusters where the variable appears induce a connected subtree R4 R5 {A,D,G},{R4} G R3 A C B F R1 R2 E 𝝌(C1) 𝜓(C1) Hypergraph Tree decomposition
Tree Decomposition: Separators • A separator of two adjacent clusters is the set of variables associated to both clusters • Width of a decomposition/network • Treewidth = maximum number of variables in clusters - 1 C1 C C1 C2 E {A,B,C,E},{R2,R3} B C3 C3 C2 A F {A,E,F},{R1} {A,B,D},{R3,R5} D C4 C4 G {A,D,G},{R4}
Relational Consistency Property R(∗,m)C [Karakashian+ AAAI 10] • A CSP is R(∗,m)C iff • Every tuple in a relation can be extended • to the variables in the scope of any (m-1) other relations • in an assignment satisfying all m relations simultaneously • R(∗,m)C ≡ Every set of m relations is minimal ∀ tuple ..… ∀ relation ∀ m-1 relations
Localize Consistency • Restricting R(∗,m)C to clusters: cl-R(∗,m)C • Two clusters communicate via their separator • Constraints common to the two clusters • Domains of variables common to the two clusters E R2 R1 R3 R4 A D R4 B A D C B A D C R6 R5 R7 F
Bolstering Propagation at Separators • Localization cl-R(*,m)C • Fewer combinations of mrelations • Reduces the enforced consistency level • Ideally: add unique constraint • Space overhead, major bottleneck • Enhance propagation by bolstering • Projection of existing constraints • Adding binary constraints • Adding clique constraints E R2 R1 R3 B A D C Rsep R6 R5 R7 F R4
Bolstering Schemas: Approximate Unique Separator Constraint E Ry R3 D C Ra Rx E E E E E A A D D B B C C R2 R1 R3 A D R2 R1 B C Ry Ra R4 B A D C B A D C B A D C B B A C R3’ R6 R5 R7 R’3 R’3 R6 R5 Rx F F F F F Projection cl+proj-R(*,m)C Binary constraints cl+bin-R(*,m)C Clique constraints cl+clq-R(*,m)C
Resulting Consistency Properties cl+clq-R(∗,2)C cl+clq-R(∗,3)C cl+clq-R(∗,4)C cl+clq-R(∗,|ψ(cli)|)C cl+bin-R(∗,3)C cl+bin-R(∗,4)C cl+bin-R(∗,|ψ(cli)|)C cl+bin-R(∗,2)C cl+proj-R(∗,2)C R(∗,2)C R(∗,4)C cl+proj-R(∗,3)C R(∗,3)C [Bessiere+ 2008] cl+proj-R(∗,4)C cl+proj-R(∗,|ψ(cli)|)C maxRPWC GAC cl-R(∗,2)C cl-R(∗,3)C cl-R(∗,4)C cl-R(∗,|ψ(cli)|)C
Cumulative Count of Instances Solved w/o Backtracking UNSAT SAT Acknowledgment: Charts suggested by RinaDechter
Conclusions & Future Work • Adapted R(∗,m)C to a tree decomposition of the CSP • Localizing R(∗,m)C to the clusters • Bolstering separators to strengthen the enforced consistency • Directions for future work • R(∗,m)C on non-table constraints via domain filtering • Automating the selection of a consistency property • Inside clusters • During search • Modify the structure of a tree decomposition to improve performance (e.g., merging clusters [Fattah & Dechter 1996])