380 likes | 508 Vues
This talk presents significant advancements in relational consistency, including relational m-wise consistency (R(∗,m)C) and its applications in constraint satisfaction problems (CSPs). The work discusses various algorithms for enforcing relational consistency, improvements in performance through graph reformulations, and adaptability via machine learning classifiers. Key methods such as relational neighborhood inverse consistency (RNIC) and hybrid solvers are explored, demonstrating their effectiveness in both dense and sparse CSPs. This research, conducted in collaboration with experts from various institutions, showcases practical applications and theoretical underpinnings crucial for future developments in the field.
E N D
Recent Advances in High-Level Relational Consistency Robert J. Woodward • Joint work with • Shant Karakashian, Daniel Geschwender, Christopher Reeson, and Berthe Y. Choueiry @ UNL • Christian Bessiere @ LIRMM-CNRS • Support • Experiments conducted at UNL’s Holland Computing Center • NSF Graduate Research Fellowship & NSF Grant No. RI-111795 Coconut Talk
Publications • Relational m-wise consistency, R(∗,m)C • Relational Consistency by Constraint Filtering [SAC 10] • A First Practical Algorithm for High Levels of Relational Consistency [AAAI 10] • Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition [AAAI 13] • Relational Neighborhood Inverse Consistency, RNIC • Solving Difficult CSPs with Relational Neighborhood Inverse Consistency [AAAI 11] • Adaptive Neighborhood Inverse Consistency as Lookahead for Non-Binary CSPs [AAAI-SA 11] • Reformulating the Dual Graphs of CSPs to Improve the Performance of Relational Neighborhood Inverse Consistency [SARA 11] • Revisiting Neighborhood Inverse Consistency on Binary CSPs [CP 12] • Selecting the Appropriate Consistency Algorithm for CSPs Using Machine Learning Classifiers[AAAI-SA13] • MS thesis, Woodward, Dec 2011 • PhD thesis, Karakashian, May 2013 • Papers and slides available on lab website, consystlab.unl.edu Coconut Talk
Overview • Background • Relational m-wise consistency, R(∗,m)C [SAC10,AAAI10] • Property, Algorithm, Weakening • Characterization, Evaluating • Relational Neighborhood Inverse Consistency (RNIC) [AAAI11,SARA11] • Property, Algorithm • Dual-graph reformulation, Characterization, Selection strategy • Evaluating • Dual Graphs of Binary CSPs [CP2012] • Complete constraint network, Non-complete constraint network • RNIC on binary CSPs • Characterization, Evaluating • Conclusions Coconut Talk
Constraint Satisfaction Problem R6 B • Key to our research • Operate on the dual graph • CSP • Variables, Domains • Constraints: Relations & scopes • Representation • Hypergraph • Dual graph • Solved with • Search • Enforcing consistency • Lookahead = Search + enforcing consistency A Hypergraph R4 E R1 R2 R5 R3 C F D R5 R3 R1 C D AD BCD CF Dual graph A B BD AD F AB ABDE EF AB E R6 R4 R2 Coconut Talk
Relational m-wise consistency, R(∗,m)C [SAC 2010, AAAI 2010] • A parameterized relational consistency property • Definition • For every set of m constraints • every tuple in a relation can be extended to an assignment • of variables in the scopes of the other m-1 relations • R(∗,m)C ≡ every m relations form a minimal CSP Coconut Talk
Algorithms for Enforcing R(∗,m)C • PerTuple • For each tuple find a solution for the variables in the m-1 relations • Many satisfiability searches • Effective when there are many solutions • Each search is quick & easy ti t3 t2 t1 • AllSol • Find all solutions of problem induced by m relations, & keep their tuples • A single exhaustive search • Effective when there are few or no solutions • Hybrid Solvers (portfolio based)[+Scott] Coconut Talk
Index-Tree Data Structure • Goal: quickly find matching tuples in other relations • Given two relations, R1 & R2 • For a given tuple in R1, find matching tuples in R2 Root A 0 1 B 0 1 1 C 1 1 1 t1 t2 t4 t3 Coconut Talk
Weakening R(∗,m)C • Weaken R(∗,m)C by removing redundant edges [Jégou 89] R(∗,3)C wR(∗,3)C R1 R2 R3 R1 R2 R4 R1 R2 R5 R1 R3 R4 R2 R3 R4 R2 R4 R5 R3 R4 R5 R1 R2 R3 R1 R2 R5 R1 R3 R4 R2 R4 R5 R3 R4 R5 R1 R2 B ABD BCF C F A CFG C A D R5 ADE ACEG C G R3 R4 A E C R1 R2 A minimal dual graph B ABD BCF CF CFG AD R5 ADE ACEG CG R3 R4 AE Coconut Talk
Characterizing R(∗,m)C [Jégou 89] • GAC [Waltz 75] • maxRPWC [Bessiere+ 08] • RmC: Relational m Consistency [Dechter+ 97] R2C R3C R4C RmC p p’ : pis strictly weaker than p’ R(∗,3)C R(∗,4)C R(∗,m)C R(∗,2)C wR(∗,2)C GAC maxRPWC wR(∗,3)C wR(∗,4)C wR(∗,m)C Coconut Talk
Empirical Evaluations (1) Coconut Talk
Empirical Evaluations (2) Coconut Talk
Overview • Background • Relational Consistency R(∗,m)C [SAC10,AAAI10] • Property, Algorithm, Weakening • Characterization, Evaluating • Relational Neighborhood Inverse Consistency (RNIC) [AAAI11,SARA11] • Property, Algorithm • Dual-graph reformulation, Characterization, Selection strategy • Evaluating • Dual Graphs of Binary CSPs [CP2012] • Complete constraint network, Non-complete constraint network • RNIC on binary CSPs • Characterization, Evaluating • Conclusions Coconut Talk
Neighborhood Inverse Consistency • Binary CSPs [Debruyene+ 01] • Not effective on sparse problems • Too costly on dense problems • Non-binary CSPs? • Neighborhoods likely too large • Property [Freuder+ 96] • Every value can be extended to a solution in its variable’s neighborhood • Domain-based property • Algorithm • No space overhead • Adapts to graph connectivity R4 A C 0,1,2 0,1,2 R0 R1 R3 B D 0,1,2 0,1,2 R2 R6 B A R4 E R1 R2 R5 C F D R3 Coconut Talk
Relational NIC B A R4 E R1 R2 R5 R3 C F D Hypergraph R5 R3 R1 C D AD BCD CF A B BD AD F • Domain filtering • Property: RNIC+DF • Algorithm: Projection AB ABDE EF AB E R6 R4 R2 Dual graph • Property • Every tuple can be extended to a solution in its relation’s neighborhood • Relation-based property • Algorithm • Operates on dual graph • Filters relations • Does not alter topology of graphs Coconut Talk
From NIC to RNIC • Neighborhood Inverse Consistency (NIC)[Freuder+ 96] • Proposed for binary CSPs • Operates on constraint graph • Filters domain of variables • Relational Neighborhood Inverse Consistency (RNIC) • Proposed for both binary & non-binary CSPs • Operates on dual graph • Filters relations; last step projects updated relations on domains • Both • Adapt consistency level to local topology of constraint network • Add no new relations (no constraint synthesis) Coconut Talk
Algorithm for Enforcing RNIC • Two queues • Q: relations to be updated • Qt(R): The tuples of relation Rwhose supports must be verified • SEARCHSUPPORT(τ,R) • Backtrack search on Neigh(R) • Loop until all Qt(⋅)are empty τi ✗ τ √ ..… • Complexity • Space: O(ketδ) • Time: O(tδ+1eδ) • Efficient for a fixed δ R Neigh(R) Coconut Talk
Improving Algorithm’s Performance Dynamically detect dangles • Tree structures may show in subproblem @ each instantiation • Apply directional arc consistency Note that exploiting dangles is • Not useful in R(∗,m)C: small value of m, subproblem size • Not applicable to GAC: does not operate on dual graph R5 R3 R1 R6 R4 R2 Coconut Talk
Reformulation: Removing Redundant Edges • High density • Large neighborhoods • Higher cost of RNIC • Minimal dual graph • Equivalent CSP • Computed efficiently [Janssen+ 89] • Run algorithm on a minimal dual graph • Smaller neighborhoods, solution set not affected • wRNIC: a strictly weaker property R1 R5 R3 C D AD BCD CF A B BD F D A AB ABDE EF B A E R6 R4 R2 dGo= 60% dGw = 40% wRNIC RNIC Coconut Talk
Reformulation: Triangulation • Cycles of length ≥ 4 • Hampers propagation • Triangulating dual graph • Equivalent CSP • Min-fill heuristic • Run algorithm on a triangulated dual graph • Created loops enhance propagation • triRNIC: a strictly stronger property R5 R3 R1 C D AD BCD CF A B BD F AD AB ABDE EF AB E R6 R4 R2 dGo= 60% dGtri = 67% wRNIC RNIC triRNIC Coconut Talk
Reformulation: RR & Triangulation R5 R3 R1 • Fixing the dual graph • RR copes with high density • Triangulation boosts propagation • RR+Tri • Both operate locally • Are complementary, do not ‘clash’ • Run algorithm on a RR+tri dual graph • CSP solution set is not affected • wtriRNIC is not comparable with RNIC C D AD BCD CF A B BD F AD AB ABDE EF AB E R6 R4 R2 dGo= 60% R5 R3 R1 C D AD BCD CF A B BD F AD AB ABDE EF AB E R6 R4 R2 dGwtri = 47% RNIC wRNIC triRNIC wtriRNIC Coconut Talk
Selection Strategy: Which? When? • Density of dual graph ≥ 15% is too dense • Remove redundant edges • Triangulation increases density no more than two fold • Reformulate by triangulation • Each reformulation executed at most once Start No Yes dGo≥ 15% No No Yes Yes dGtri≤ 2 dGo dGwtri≤ 2 dGw Gwtri Gtri Gw Go Coconut Talk
Characterizing RNIC R(∗,m)C • Relation-based property • GAC, SGAC • Variable-based properties RNIC+DF R(*,2)C+DF GAC SGAC p p’ : pis strictly weaker than p’ Coconut Talk R(*,2)C R(*,3)C RNIC R(*,δ+1)C
Characterizing RNIC • The fuller picture • w: Property weakened by redundancy removal • tri: Property strengthened by triangulation • δ: Degree of dual network wR(*,4)C R(*,4)C R(*,2)C≡ wR(*,2)C wR(*,3)C R(*,3)C RNIC R(*,δ+1)C wR(*,δ+1)C wRNIC triRNIC wtriRNIC Coconut Talk
Experimental Setup • Backtrack search with full lookahead • We compare • wR(∗,m)C for m = 2,3,4 • GAC • RNIC and its variations • General conclusion • GAC best on random problems • RNIC-based best on structured/quasi-structued problems • We focus on non-binary results (960 instances) • triRNIC theoretically has the least number of nodes visited • selRNIC solves most instances backtrack free (652 instances) Coconut Talk
Experimental Results • Statistical analysis on CP benchmarks • Time: Censored data calculated mean • Rank: Censored data rank based on probability of survival data analysis • #F: Number of instances fastest • [⋅]CPU: Equivalence classes based on CPU • [⋅]Completion: Equivalence classes based on completion • #C: Number of instances completed • #BT-free: # instances solved backtrack free Coconut Talk
Overview • Background • Relational Consistency R(∗,m)C [SAC10,AAAI10] • Property, Algorithm, Weakening • Characterization, Evaluating • Relational Neighborhood Inverse Consistency (RNIC) [AAAI11,SARA11] • Property, Algorithm • Dual-graph reformulation, Characterization, Selection strategy • Evaluating • Dual Graphs of Binary CSPs [CP2012] • Complete constraint network, Non-complete constraint network • RNIC on binary CSPs • Characterization, Evaluating • Conclusions Coconut Talk
Neighborhood Inverse Consistency A C R1 R2 B D R4 R3 • Relational NIC [Woodward+ AAAI 11] • Reformulation of NIC [Freuder & Elfe, AAAI 96] • Defined for dual graph • Algorithm operates on dual graph & filter relations (not domains!) • Initially designed for non-binary CSPs • How about RNIC on binary CSPs? • Impact of the structure of the dual graph Coconut Talk
Complete Constraint Graph Dual Graph: Triangle shaped grids Vn Vn Vn Vn C1,n Cn-1,n C4,n C3,n C2,n V1 Vn-1 V3 V2 V4 Ci,n V1 V5 V4 V3 V2 V3 V5 V5 V5 Vi C1,5 C4,5 C3,5 C2,5 V2 Vn-1 Ci,n-1 (n-i) vertices V1 V4 V3 V2 V1 Vn Vi V4 V4 Vi Vi C1,4 C3,4 C2,4 Ci,i+1 V3 V2 V1 V3 V1 Vi C1,3 C2,3 C1,i Ci-2,i C3,i C2,i Vi Vi Vi V2 V1 C1,2 Vi (i-2)vertices Coconut Talk
Minimal Dual Graph Dual Graph: Triangle shaped grids Vn Vn Vn Vn C1,n Cn-1,n C4,n C3,n C2,n V1 Vn-1 V4 V3 V2 Ci,n V1 V5 V4 V3 V2 V3 V5 V5 V5 Vi C1,5 C4,5 C3,5 C2,5 V2 Vn-1 Ci,n-1 (n-i) vertices V1 V4 V3 V2 V1 Vn Vi V4 V4 Vi Vi C1,4 C3,4 C2,4 Ci,i+1 V3 V2 V1 V3 V1 Vi C1,3 C2,3 C1,i Ci-2,i C3,i C2,i Vi Vi Vi V2 V1 C1,2 Vi (i-2)vertices Coconut Talk
Minimal Dual Graph … can be a triangle-shaped grid (planar) V2 • … but does not have to be • Star on V2 • Cycle of size 6 V5 C4,5 C2,5 V1 V4 V5 C1,2 V2 C1,5 C1,2 C1,5 C2,4 C1,3 V2 C1,4 V1 V5 V5 V2 C2,5 V4 V1 C2,4 C3,5 V3 C2,3 C1,3 C3,4 C2,3 C4,5 V3 V4 V3 V3 C3,4 V1 V4 C1,4 C3,5 V5 V5 V5 C1,5 C4,5 C3,5 C2,5 V1 V4 V3 V2 V4 V4 C1,4 C3,4 C2,4 V3 V2 V1 V3 C1,3 C2,3 V2 V1 Coconut Talk C1,2
Non-Complete Constraint Graph V5 V5 C1,5 C3,5 C2,5 • Can still be a triangle-shaped grid • Have a chain of vertices • of length ≤ n-1 V1 V3 V1 V4 C1,2 C1,5 C1,4 C1,4 C3,4 V2 C2,5 V2 V5 V3 C3,5 C2,3 V1 C2,3 V2 V3 V4 C3,4 C1,2 Coconut Talk
wRNIC on Binary CSPs • On a binary CSP, RNIC enforced on the minimal dual graph (wRNIC) is never strictly stronger than R(*,3)C. • wRNIC can never consider more than 3 relations C1 C1 V1 V2 V1 V1 C2 C4 V1 C2 C4 V2 V3 V3 C3 C3 • In either case, it is not possible to have an edge between C3 & C4 (a common variable to C3 & C4) while keeping C3 as a binary constraint Coconut Talk
NIC, sCDC, and RNIC not comparable • NIC Property [Freuder & Elfe, AAAI 96] • Every value can be extended to a solution in its variable’s neighborhood • sCDC Property [Lecoutre+, JAIR 11] • An instantiation {(x,a),(y,b)} is DC iff (y,b) holds in SAC when x=a and (x,a) holds in SAC when y=b and (x,y) in scope of some constraint. Further, the problem is also AC. • RNIC Property [Woodward+, AAAI 11] • Every tuple can be extended to a solution in its relation’s neighborhood • wRNIC, triRNIC, wtriRNIC enforce RNIC on a minimal, triangulated, and minimal triangulated dual graph, respectively • selRNIC automatically selects the RNIC variant based on the density of the dual graph R1 R2 R4 R3 Coconut Talk A C B D
Experimental Results (CPU Time) Coconut Talk
Experimental Results (BT-free, #NV) Coconut Talk
Conclusions • Introduced R(∗,m)C, RNIC • Algorithm for enforcing R(∗,m)C and RNIC • BT-free search: hints to problem tractability • Various reformulations of the dual graph • Adaptive, unifying, self-regulatory, automatic strategy for RNIC • Structure of binary dual graph • Empirical evidence, supported by statistics Coconut Talk
Thank You! Questions? Coconut Talk
Enforcing R(*,m)C on the Induced Dual CSP Pω Q Extract <ω,R> from Q <ω1,R1> Define CSP Pω ω2 ω1 ω3 <ω1,R2> For each τ in R <ω1,R5> Assign τ as a value for R Solve Pω(with τ fixed) with forward checking <ω2,R2> If no solution found: delete τ <ω2,R5> • Add <ω’, R’> to Q: Ri≠R’, Ri∈ω’ and R’∈ω’ <ω2,R4> CB <ω3,R3> ω1 CC <ω3,R4> R2 R1 AB BC R1: A B R2: B C <ω3,R5> R5: C F G R5 CFG R5: C F G R3 DE EF R4 ω2 ω3 CC R3: D E R4: E F Coconut Talk CB