More on Constraint Consistency

Slides:



Advertisements
Similar presentations
Levels of Consistency Node Consistency (NC) Arc-consistency (AC) Path Consistency (PC) Generalised arc-consistency (GAC) Bounds consistency Inverse Path.
Advertisements

Non-Binary Constraint Satisfaction Toby Walsh Cork Constraint Computation Center.
Foundations of Constraint Processing Temporal Constraints Networks 1Topic Foundations of Constraint Processing CSCE421/821, Spring
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
Wednesday, January 29, 2003CSCE Spring 2003 B.Y. Choueiry Constraint Consistency Chapter 3.
Constraint Optimization Presentation by Nathan Stender Chapter 13 of Constraint Processing by Rina Dechter 3/25/20131Constraint Optimization.
Foundations of Constraint Processing More on Constraint Consistency 1 Foundations of Constraint Processing CSCE421/821, Spring
Foundations of Constraint Processing, Spring 2008 April 16, 2008 Tree-Structured CSPs1 Foundations of Constraint Processing CSCE421/821, Spring 2008:
A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian.
Foundations of Constraint Processing, Fall 2005 October 21, 2005CSPs and Relational DBs1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Foundations of Constraint Processing, Fall 2005 Sep 22, 2005Consistency: Properties & Algorithms 1 Foundations of Constraint Processing CSCE421/821, Fall.
Anagh Lal Monday, April 14, Chapter 9 – Tree Decomposition Methods Anagh Lal CSCE Advanced Constraint Processing.
An Approximation of Generalized Arc-Consistency for Temporal CSPs Lin Xu and Berthe Y. Choueiry Constraint Systems Laboratory Department of Computer Science.
Foundations of Constraint Processing, Fall 2005 November 16, 2005nFCi1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
 i may require adding new constraints, except for… o i =1  domain filtering o i =   constraint filtering Robert Woodward & Berthe Y. Choueiry Constraint.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 1 Ryan Kinworthy CSCE Advanced Constraint Processing.
Jean-Charles REGIN Michel RUEHER ILOG Sophia Antipolis Université de Nice – Sophia Antipolis A global constraint combining.
1 Consistency algorithms Chapter 3. Spring 2007 ICS 275A - Constraint Networks 2 Consistency methods Approximation of inference: Arc, path and i-consistecy.
M. HardojoFriday, February 14, 2003 Directional Consistency Dechter, Chapter 4 1.Section 4.4: Width vs. Local Consistency Width-1 problems: DAC Width-2.
A game of logic where the player must assign the numbers 1..9 to cells on a 9x9 grid. The placement of the numbers must be such that every number must.
26 April 2013Lecture 5: Constraint Propagation and Consistency Enforcement1 Constraint Propagation and Consistency Enforcement Jorge Cruz DI/FCT/UNL April.
Constraint Satisfaction Problems
1 Constraint Programming: An Introduction Adapted by Cristian OLIVA from Peter Stuckey (1998) Ho Chi Minh City.
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
On Algorithms for Decomposable Constraints Kostas Stergiou Ian Gent, Patrick Prosser, Toby Walsh A.P.E.S. Research Group.
Constraint Systems Laboratory R.J. Woodward 1, S. Karakashian 1, B.Y. Choueiry 1 & C. Bessiere 2 1 Constraint Systems Laboratory, University of Nebraska-Lincoln.
CSP: Algorithms and Dichotomy Conjecture Andrei A. Bulatov Simon Fraser University.
Foundations of Constraint Processing, Spring 2009 Structure-Based Methods: An Introduction 1 Foundations of Constraint Processing CSCE421/821, Spring 2009.
Eliminating non- binary constraints Toby Walsh Cork Constraint Computation Center.
Problem Solving with Constraints CSPs and Relational DBs1 Problem Solving with Constraints CSCE496/896, Fall
Constraint Programming
Structure-Based Methods Foundations of Constraint Processing
Consistency Methods for Temporal Reasoning
A First Practical Algorithm for High Levels of Relational Consistency
Empirical Comparison of Preprocessing and Lookahead Techniques for Binary Constraint Satisfaction Problems Zheying Jane Yang & Berthe Y. Choueiry Constraint.
Structure-Based Methods Foundations of Constraint Processing
Constraints and Search
CSPs and Relational DBs
Path Consistency & Global Consistency Properties
Foundations of Constraint Processing
Consistency Algorithms Foundations of Constraint Processing
Structure-Based Methods Foundations of Constraint Processing
Problem Solving with Constraints
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Structure-Based Methods Foundations of Constraint Processing
Foundations of Constraint Processing All questions to Piazza
Evaluation of (Deterministic) BT Search Algorithms
More on Constraint Consistency
Evaluation of (Deterministic) BT Search Algorithms
Advanced consistency methods Chapter 8
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Problem Solving With Constraints
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Foundations of Constraint Processing All questions to Piazza
Evaluation of (Deterministic) BT Search Algorithms
Problem Solving with Constraints
Problem Solving with Constraints
Intelligent Backtracking Algorithms: A Theoretical Evaluation
Revisiting Neighborhood Inverse Consistency on Binary CSPs
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition Shant Karakashian, Robert J. Woodward.
Directional consistency Chapter 4
Structure-Based Methods Foundations of Constraint Processing
Revisiting Neighborhood Inverse Consistency on Binary CSPs
Constraint Satisfaction Problems
An Introduction Structure-Based Methods
Reformulating the Dual Graphs of CSPs
Structure-Based Methods Foundations of Constraint Processing
Consistency algorithms
Presentation transcript:

More on Constraint Consistency Properties & Algorithms Problem Solving with Constraints CSCE421/821, Spring 2018 www.cse.unl.edu/~choueiry/S18-421-821/ All questions to Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444

Summary Global properties Local properties Binary CSPs Non-Binary CSPs Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

Outline Global properties Local properties Binary CSPs Dechter Sections 3.1, 3.2, 3.3, 3.4 Non-Binary CSPs Dechter Sections 3.5.1, 8.1 Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Dechter Sections 3.5.3 Weighted CSPs

Global Consistency Properties Minimality & Decomposability Originally defined for binary CSPs Easily extendable to non-binary CSPs Minimality Dechter Definition 2.6 Every constraint is as tight as it can be Minimality  n-consistency A.k.a. strong consistency (strongly consistent) in the literature In DB, the relations are said to “join completely” Decomposability Every consistent partial solution can be terminated backtrack free Decomposability ≡ strong n-consistency

Graphical Illustration Minimality tuple n-2 variables Decomposability any consistent assignment of length k n-k variables Arc consistency (1,1)-consistency vvp Path consistency (2,1)-consistency tuple (k-1,1)-consistency k-consistency any consistent assignment of length k-1 kth variables (i,j)-consistency any consistent assignment of length i j variables (1,j)-consistency inverse consistency vvp j variables NIC vvp deg variables

Outline Global properties Local properties Effects Binary CSPs Non-Binary CSPs Effects Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

Local Properties: Binary CSPs Classical ones Based on variations of (i,j)-consistency More recently Singleton Arc Consistency Inverse Consistency Neighborhood Inverse Consistency (Conservative) Dual consistency Special Constraints

Classical Local Consistency: Properties Arc consistency Every vvp can be extended to a partial solution of length 2 Path consistency Every partial solution of length 2 can be extended to a partial solution of length 3 i-consistency Every partial solution of length (i-1) can be extended to a partial solution of length i (i,j)-consistency Every partial solution of length i can be extended to a partial solution of length i+j

Classical Local Consistency: Algorithms Arc consistency: AC-1, 2, 3, …, 7, AC-2001, AC-*, … Effect: domain filtering Complexity: in n2 Path consistency PC-1, 2, 3, …, 8, PC2001, PPC, … Effect: adds binary constraints, modifies the width of network Complexity: in n3 i-consistency Dechter Figure 3.14 & 3.15 Effect: adds constraints of arity i-1, modifies the arity of network Complexity: in ni

Local Properties: Binary CSPs Classical ones Based on variations of (i,j)-consistency More recently Singleton Arc Consistency Inverse Consistency Neighborhood Inverse Consistency (Conservative) Dual consistency Special Constraints

Singleton Arc Consistency (SAC) Property: The CSP is AC for every vvp (Sketchy) Algorithm Repeat until no change occurs Repeat for each variable Repeat for each value in domain Assign this value to this variable. If the CSP is AC, keep the value. Otherwise, remove it. Effect: domain filtering Note Proposed by Debruyne & Bessière, IJCAI 97 Quite expensive, but can be quite effective

POAC  SAC Partition-One AC ≽≽ SAC Keep a counter for all vvps on For every singleton test on domain of Update the counter if value appears If counter is zero, remove vvp

Inverse Consistency Path Inverse Consistency (PIC) Equivalent to (1,2)-consistency Inverse m-consistency Equivalent to (1,m)-consistency Neighborhood Inverse Consistency (NIC) Every vvp participates in a solution in the CSP induced by its neighborhood Global Inverse Consistency (GIC) Domain minimality

Neighborhood Inverse Consistency (NIC): Algorithm Repeat until no change occurs Repeat for each variable Consider only the neighborhood of the variable Repeat for each value for the variable If the value appears in a complete solution for the neighborhood, then keep it. Otherwise, remove it. Effect: domain filtering Note Proposed by Freuder & Elfe, AAAI 96 Very effective, very expensive

Summary: Binary CSPs (i,j)-consistency j=1 i=1, inverse consistency Arc consistency: (1,1)-consistency Path consistency: (2,1)-consistency i-consistency: (i-1,1)-consistency Strong i-consistency: k-consistency for all k ≤ i i=1, inverse consistency Path Inverse Consistency (PIC): (1,2)-consistency Global Inverse Consisntecy (GIC): (1,n-1) consistency (minimal domains) Neighborhood Inverse Consistency (NIC)

Local Properties: Binary CSPs More recently Singleton Arc Consistency Partial Path Consistency (PPC) (Conservative) Dual consistency Conservative Path Consistency Debruyene ICTAI 99 Special Constraints

Special Constraints: AC [Van Hentenryck et al. AIJ 92] Specialized AC algorithms exist for special constraints Functional A constraint C is functional with respect to a domain D iff for all vD (respectively wD) there exists at most one wD (respectively vD) such that C(v,w) Anti-functional A constraint C is anti-functional with respect to a domain D iff C is functional with respect to D Monotonic A constraint C is monotonic with respect to a domain D iff there exists a total ordering on D such that, for all v and wD, C(v,w) holds implies C(v’,w)’ holds for all values all v’ and w’D such that v’ v and w’ w

Outline Global properties Local properties Binary CSPs Non-Binary CSPs Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

How about Non-binary CSPs? (Almost) all properties (& algorithms) discussed so far were restricted to binary CSPs Consistency properties for non-binary CSPs are the topic of current research Mainly, properties and algorithms for: Domain filtering techniques (a.k.a. domain reduction, domain propagation) Do not change ‘topology’ of network (width/arity) Do not modify constraints definitions Relational m-consistency [Dechter, Chap 8] Add constraints/change constraint definitions

Non-Binary CSPs Domain filtering Relational consistency Generalized Arc Consistency (GAC) Dechter 3.5.1 Singleton Generalized Arc Consistency (SGAC) maxRPWC, rPIC, RPWC, etc. [Bessiere et al., 08] Relational consistency (strong) Relational m-consistency Relational Arc-Consistency (R1C) Relational Path-Consistency (R2C) Relational (i,m)-consistency i = 1, Relational (1,m)-consistency is a domain filtering technique i=1 and m=2, Relational (1,m)-consistency is known as rPIC Relational (*,m)-consistency (m-wise consistency)

Generalized Arc-Consistency: Property First introduced by [Mohr & Masini, ECAI 88] Every value in the domain of every variable has a support in every constraint in the problem In every constraint, every vvp participates in a consistent tuple (can be extended to all other variables in the scope of the constraint)

Generalized Arc-Consistency: Algorithm1 (Sketchy) Algorithm Project the constraint on each of the variables in its scope to tighten the domain of the variable. As domains are filtered, filter the constraint Repeat the above until quiescence When constraint is not defined in extension, GAC may be problematic (e.g., NP-hard in TCSP)

Generalized Arc-Consistency: Algorithm2 Another (Sketchy) Algorithm Iterate over every combination of a variable and a constraint where it appears (Vx, Ci) For every value for Vx, identify a support for this value in Ci, where a support is a tuple where all vvps in the tuple are alive Repeat the above until quiescence Does not filter the constraints Check GAC2001 [Bessière et al., AIJ05] When constraint is not defined in extension, GAC may be problematic (e.g., NP-hard in TCSP)

SGAC Idea: Similar to SAC Note (Sketchy) Algorithm Repeat until quiescence For each vvp Assign the vvp; Enforce GAC on the CSP; If CSP is GAC, keep the vvp, else remove it Note Costly in practice, but polynomial as long as GAC is polynomial SGAC has been empirically shown to solve every known 9x9 Sudoku puzzle

Relational Consistency Dechter generalizes consistency Dechter 8.1.1 properties to non-binary constraints Relational m-consistency Relational 1-consistency  relational arc-consistency Relational 2-consistency  relational path-consistency Relational (i,m)-consistency Relational (1,1)consistency  GAC m-wise consistency (Databases) Relational (*,m)-consistency

Relational 1-Consistency Dechter Def 8.1 Property For every constraint C Let k be the arity of C Every consistent partial solution of length k-1 Can be extended to a consistent partial solution of length k (Sketchy) Algorithm Dechter Equation (8.2), (8.3) For each C, generate k constraints, each of arity k-1 by Joining C with the domain of each variable x in scope of C and Projecting result on remaining variables (possibly intersecting with existing constraints) Effect: For each constraint, it adds k constraints Complexity: polynomial in the largest scope

Relational 2-Consistency Dechter Def 8.2 Property For every two constraints C1 and C2 ,every consistent partial solution over can be extended to (Sketchy) Algorithm Dechter Equation (8.4) generate all constraints of arity |u| -1 by Joining C1, C2, (and the domain of variables u) and Projecting the result on Effect: adds |s| new constraints Complexity: polynomial in |u| a1 ai as C1 s C2

Relational m-Consistency Dechter Def 8.3 Property For m constraints C1, C2,…, Cm ,every consistent partial solution over can be extended to (Sketchy) Algorithm Dechter Equation (8.5) generate all constraints of arity |u| -1 by (and the domain of variables u) Projecting the result on Effect: adds |s| new constraints Complexity: polynomial in |u| a1 ai as C1 s C2 Cm

Relational m-Consistency Dechter Def 8.3 Property For every m constraints C1 , C2 , .., Cm Let s = im scope(Ci) Every consistent partial solution of length |s| -1 Can be extended to a consistent partial solution of length |s| (Sketchy) Algorithm Dechter Equation (8.5) For each m constraints, generate all constraints of arity |s| -1 by Joining the m constraints and the domain of a variable (at the intersection of their scopes) and Projecting the result on remaining variables Effect: Adds a huge number of new constraints Complexity: polynomial in the sum of largest 2 scopes

Relational (i,m)-Consistency Dechter Def 8.4 Property For every m constraints C1 , C2 , .., Cm Let s = im scope(Ci) Every consistent partial solution of length i Can be extended to a consistent partial solution of length |s| Algorithm Dechter Fig 8.1 For each m constraints, generate all constraints of arity i by Joining the m constraints and the domain of a variable (at the intersection of their scopes) and Projecting the result on every combination of i variables Effect: Adds a huge number of new constraints, except for i=1 Complexity: exponential in s (largest union of scope of m constraints) in time and space

m-wise consistency Property (Sketchy) Algorithm For every set of m constraints, Every tuple in each constraint appears in a consistent solution to the m constraints That is, each constraint is as tight as it can be for the set of m constraints (Sketchy) Algorithm Repeat until quiescence Join each set of m constraints Project it on each existing constraint to filter the constraint Effect: Filters the constraints, w/o introducing new constraints Note: Defined in DB: pairwise consistency, relations join completely Woodward defined R(*,m)C + new algorithms that are linear space, currently under evaluation

Summary: Non-Binary CSPs Domain filtering Generalized Arc Consistency (GAC) Singleton Generalized Arc Consistency (SGAC) maxRPWC, rPIC, RPWC, etc. [Bessiere et al., 08] Relational consistency (strong) Relational m-consistency Relational Arc-Consistency (R1C) Relational Path-Consistency (R2C) Relational (i,m)-consistency i = 1, Relational (1,m)-consistency is a domain filtering technique i=1 and m=2, Relational (1,m)-consistency is known as rPIC Relational (*,m)-consistency (m-wise consistency)

Outline Global properties Local properties Binary CSPs Non-Binary CSPs Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

Effects of Consistency Algorithms Filter the domains Old algorithms: AC-*, GAC-*, etc. New algorithms: maxRPWC, R(1,m)C, etc. Filter the constraints New algorithms: R(*,m)C Add new constraints to the problem Old algorithms: PC-2, etc. i-consistency (i > 2), (i,j)-C, RmC, R(i,m)C Example: Solving the CSPs by Constraint Synthesis

Solving CSPs by Constraint Synthesis [Freuder 78] From i=2 to i=n, achieve i-consistency by using (i -1)-arity constraints to synthesize i-arity constraints, then use the i-ary constraints to filter constraints of arity i-1, i-2, etc. Process ends with a unique n-ary constraint whose tuples are all the solutions to the CSP

Outline Global properties Local properties Binary CSPs Non-Binary CSPs Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

Box Consistency (on interval constraints) Domains are (continuous) intervals Historically also called: continuous CSPs, continuous domains Domains are infinite: We cannot enumerate consistent values/tuples [Davis, AIJ 87] (see recommended reading) showed that even AC may be incomplete or not terminate We apply consistency (usually, arc-consistency) on the boundaries of the interval Sometimes, domains are split, so that boundaries can be further filtered

Weighted CSPs Weighted CSPs Tuples have weights in [0,m], m: intolerable cost Costs are added ab=min{m,a+b} Soft Arc Consistency (Cooper, de Givry, Schiex, etc.) VAC: Virtual Arc Consistency EDAC: Existential Directional Arc Consistency OSAC: Optimal Soft Arc Consistency

Summary Global properties Local properties Binary CSPs Non-Binary CSPs Effects of Consistency Algorithms Domain filtering Constraint filtering Constraint synthesis Beyond finite, crisp CSPs Continuous domains Weighted CSPs

Global Decomposability Minimality (global consistency) Consistency

Local AC, GAC PPC, DPC, CDC, sCDC1 (original), DC2 (completes the graph) SAC, POAC, NIC, RNIC (i,j)-consistency, (1,j)-consistency PW-AC, m-wise consistency maxRPWC, rPIC, RPWC Relational m-consistency, Relational (i,m)-consistency Box consistency