Download presentation
Presentation is loading. Please wait.
Published byBianca Pollom Modified over 9 years ago
1
Foundations of Constraint Processing More on Constraint Consistency 1 Foundations of Constraint Processing CSCE421/821, Spring 2011 www.cse.unl.edu/~choueiry/S11-421-821/ All questions: cse421@cse.unl.edu Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 choueiry@cse.unl.edu Tel: +1(402)472-5444 More on Constraint Consistency Properties & Algorithms
2
Foundations of Constraint Processing More on Constraint Consistency Outline 1.Global properties 2.Local properties –Binary CSPs Dechter Sections 3.1, 3.2, 3.3, 3.4 –Non-Binary CSPs Dechter Sections 3.5.1, 8.1 3.Effects of Consistency Algorithms –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains Dechter Sections 3.5.3 –Weighted CSPs 2
3
Foundations of Constraint Processing More on Constraint Consistency 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 –In DB, the relations are said to “join completely” Decomposability –Every consistent partial solution can be terminated backtrack free –Decomposability ≡ strong n-consistency 3
4
Foundations of Constraint Processing More on Constraint Consistency Outline 1.Global properties 2.Local properties –Binary CSPs –Non-Binary CSPs 3.Effects –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains –Weighted CSPs 4
5
Foundations of Constraint Processing More on Constraint Consistency Local Properties: Binary CSPs Classical ones –Arc, path, i, strong i, (i,j)-consistency More recently –Singleton Arc Consistency –Inverse Consistency –Neighborhood Inverse Consistency –(Conservative) Dual consistency Special Constraints 5
6
Foundations of Constraint Processing More on Constraint Consistency 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 6
7
Foundations of Constraint Processing More on Constraint Consistency Classical Local Consistency: Algorithms Arc consistency: –AC-1, 2, 3, …, 7, AC-2001, AC-*, … –Effect: domain filtering –Complexity: in n 2 Path consistency –PC-1, 2, 3, …, 8, PC2001, PPC, … –Effect: adds binary constraints, modifies the width of network –Complexity: in n 3 i-consistency –Dechter Figure 3.14 & 3.15 –Effect: adds constraints of arity i-1, modifies the arity of network –Complexity: in n i 7
8
Foundations of Constraint Processing More on Constraint Consistency Local Properties: Binary CSPs Classical ones –Arc, path, i, strong i, (i,j)-consistency More recently –Singleton Arc Consistency –Inverse Consistency –Neighborhood Inverse Consistency –(Conservative) Dual consistency Special Constraints 8
9
Foundations of Constraint Processing More on Constraint Consistency 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 9
10
Foundations of Constraint Processing More on Constraint Consistency 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 10
11
Foundations of Constraint Processing More on Constraint Consistency 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 11
12
Foundations of Constraint Processing More on Constraint Consistency Summary: Binary CSPs Arc, path, i-consistency (i,j)-consistency SAC PIC (1,m)-consistency NIC 12
13
Foundations of Constraint Processing More on Constraint Consistency Local Properties: Binary CSPs Classical ones –Arc, path, i, strong i, (i,j)-consistency More recently –Singleton Arc Consistency –Inverse Consistency –Neighborhood Inverse Consistency –(Conservative) Dual consistency –Conservative Path Consistency Debruyene ICTAI 99 Special Constraints 13
14
Foundations of Constraint Processing More on Constraint Consistency AC for Special Constraints [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 14
15
Foundations of Constraint Processing More on Constraint Consistency Outline 1.Global properties 2.Local properties –Binary CSPs –Non-Binary CSPs 3.Effects of Consistency Algorithms –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains –Weighted CSPs 15
16
Foundations of Constraint Processing More on Constraint Consistency 16 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: 1.Domain filtering techniques (a.k.a. domain reduction, domain propagation) Do not change ‘topology’ of network (width/arity) Do not modify constraints definitions 2.Relational m-consistency [Dechter, Chap 8] Add constraints/change constraint definitions
17
Foundations of Constraint Processing More on Constraint Consistency Non-Binary CSPs 1.Domain filtering –Generalized Arc Consistency (GAC) Dechter 3.5.1 –Singleton Generalized Arc Consistency (SGAC) –maxRPWC, rPIC, RPWC, etc. [Bessiere et al., 08] 2.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) 17
18
Foundations of Constraint Processing More on Constraint Consistency 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) 18 Generalized Arc-Consistency: Property
19
Foundations of Constraint Processing More on Constraint Consistency 19 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)
20
Foundations of Constraint Processing More on Constraint Consistency 20 Generalized Arc-Consistency: Algorithm2 Another (Sketchy) Algorithm –Iterate over every combination of a variable and a constraint where it appears (V x, C i ) –For every value for V x, identify a support for this value in C i, 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)
21
Foundations of Constraint Processing More on Constraint Consistency SGAC Idea: Similar to SAC (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 21
22
Foundations of Constraint Processing More on Constraint Consistency 22 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
23
Foundations of Constraint Processing More on Constraint 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 constraint C, generate all constraints 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: Adds a huge number of new constraints Complexity: polynomial in the largest scope 23
24
Foundations of Constraint Processing More on Constraint Consistency Relational 2-Consistency Dechter Def 8.2 Property –For every two constraint C 1 and C 2 –Let s = scope(C 1 ) scope(C 2 ) –Every consistent partial solution of length |s| -1 –Can be extended to a consistent partial solution of length |s| (Sketchy) Algorithm Dechter Equation (8.4) –For each constraints C 1 and C 2, generate all constraints of arity |s| -1 by Joining C1, C2, and the domain of a variable (in C1 and C2 ) and Projecting the result on remaining variables Effect: Adds a huge number of new constraints Complexity: polynomial in the largest |s| 24
25
Foundations of Constraint Processing More on Constraint Consistency Relational m-Consistency Dechter Def 8.3 Property –For every m constraints C 1, C 2,.., C m –Let s = i m scope(C i ) –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 25
26
Foundations of Constraint Processing More on Constraint Consistency Relational (i,m)-Consistency Dechter Def 8.4 Property –For every m constraints C 1, C 2,.., C m –Let s = i m scope(C i ) –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 26
27
Foundations of Constraint Processing More on Constraint Consistency m-wise consistency Property –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 27
28
Foundations of Constraint Processing More on Constraint Consistency Summary: Non-Binary CSPs 1.Domain filtering –Generalized Arc Consistency (GAC) –Singleton Generalized Arc Consistency (SGAC) –maxRPWC, rPIC, RPWC, etc. [Bessiere et al., 08] 2.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) 28
29
Foundations of Constraint Processing More on Constraint Consistency Outline 1.Global properties 2.Local properties –Binary CSPs –Non-Binary CSPs 3.Effects of Consistency Algorithms –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains –Weighted CSPs 29
30
Foundations of Constraint Processing More on Constraint Consistency 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 30
31
Foundations of Constraint Processing More on Constraint Consistency 31 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
32
Foundations of Constraint Processing More on Constraint Consistency Outline 1.Global properties 2.Local properties –Binary CSPs –Non-Binary CSPs 3.Effects of Consistency Algorithms –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains –Weighted CSPs 32
33
Foundations of Constraint Processing More on Constraint Consistency 33 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
34
Foundations of Constraint Processing More on Constraint Consistency 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 34
35
Foundations of Constraint Processing More on Constraint Consistency Summary 1.Global properties 2.Local properties –Binary CSPs –Non-Binary CSPs 3.Effects of Consistency Algorithms –Domain filtering –Constraint filtering –Constraint synthesis 4.Beyond finite, crisp CSPs –Continuous domains –Weighted CSPs 35
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.