1 / 38

Robert J. Woodward

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

trygg
Download Presentation

Robert J. Woodward

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. 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

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. Empirical Evaluations (1) Coconut Talk

  11. Empirical Evaluations (2) Coconut Talk

  12. 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

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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

  18. 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

  19. 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

  20. 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

  21. 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

  22. 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

  23. 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

  24. 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

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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

  30. 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

  31. 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

  32. 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

  33. 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

  34. Experimental Results (CPU Time) Coconut Talk

  35. Experimental Results (BT-free, #NV) Coconut Talk

  36. 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

  37. Thank You! Questions? Coconut Talk

  38. 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

More Related