Advanced Consistency Techniques

Size: px
Start display at page:

Download "Advanced Consistency Techniques"

Transcription

1 Advanced Consistency Techniques Christophe Lecoutre CRIL CNRS UMR 8188 Universite d Artois Lens, France ACP Summer School

2 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 2

3 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 3

4 Bibliography Foundations of constraint satisfaction (Tsang) [Tsa93] Principles of Constraint Programming (Apt) [Apt03] Constraint Processing (Dechter) [Dec03] Constraint-based local search (van Hentenryck, Michel) [vhm05] Handbook of Constraint Programming [RvBW06] Constraint Propagation [Bes06] Constraint Networks (Lecoutre) [Lec09] Ant Colony Optimization and Constraint Programming (Solnon) [Sol10] 4

5 Notations Variables: x,y,z,... Values: a,b,c,... Domain of variable x: dom(x) Initial domain of variable x: dom init (x) Constraints: c,c xy,... Scope of constraint c: scp(c) Relation of constraint c: rel(c) Initial relation of constraint c: rel init (c) Tuples: τ,τ Constraint Networks (CN or CSP): P, P,... Set of variables of P: vars(p) Set of constraints of P: cons(p) 5

6 Illustration of CNs: the 8-Queens Problem ¾ ½ 6

7 Instances of Queens Problem as Constraint Networks For the n-queens instance, we have a constraint network P such that: vars(p) = {x a,...,x h } with dom(x i ) = {1,...,n}, i a..h cons(p) = {x i x j i j x i x j : i a..h, j a..h, i j} x a ¾ For the 3-queens instance, the compatibility graph is: ½ ½ ½ ¾ x b ¾ x c 7

8 A Solution to the 8-queens Instance ¾ ½ 8

9 Important Notions for Filtering Algorithms Let c be a r-ary constraint. Definition (Valid Tuples) A r-tuple τ is valid on c iff: x scp(c), τ[x] dom(x) The set of valid tuples on c is val(c) = Π x scp(c) dom(x). Definition (Supports = Tuples both Valid and Allowed) A r-tuple τ is a support on c iff: τ is a valid tuple on c which is allowed by c The set of supports on c is sup(c) = rel(c) val(c). 9

10 My constraint: pay 50 euros In my pocket: Pay with 5 Pay with 2 is allowed but not valid is valid but not allowed Pay with is allowed and valid 10

11 My constraint: c xy : x < y We have: dom init (x) = {0,1,2,3} and dom(x) = {1,2,3} dom init (y) = {0,1,2,3,4,5} and dom(y) = {0,1,2,3} dom init (x) dom init (y) y x ¼ ¼ ½ ¾ val(c xy ) ½ ¾ rel(c xy ) sup(c xy ) 11

12 My constraint: c xy : x < y We have: dom init (x) = {0,1,2,3} and dom(x) = {1,2} dom init (y) = {0,1,2,3,4,5} and dom(y) = {3,4} dom init (x) dom init (y) y x ¼ ¼ ½ ¾ ½ ¾ rel(c xy ) Question What is the state of the constraint? sup(c xy ) = val(c xy ) 12

13 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 13

14 Instantiation Definition (Instantiation) An instantiation I of a set X = {x 1,...,x k } of variables is a set {(x 1,a 1 ),..., (x k,a k )} such that: a1 dom init (x 1 ),..., a k dom init (x k ). We denote X by vars(i ). An instantiation I is valid iff (x,a) I, a dom(x). An instantiation I on a CN P is an instantiation of a set X vars(p) ; it is complete if vars(i ) = vars(p), partial otherwise. 14

15 Locally Consistent Instantiation Definition Let I be an instantiation. I covers a constraint c iff scp(c) vars(i ). I satisfies a constraint c iff 1 I covers c 2 the tuple (a 1,...,a r ), such that I [scp(c)] = {(x 1,a 1 ),...,(x r,a r )}, is allowed by c, i.e. (a 1,...,a r ) rel(c). Definition (Locally Consistent Instantiation) An instantiation I on a constraint network P is locally consistent iff 1 I is valid 2 every constraint of P that is covered by I is satisfied by I Otherwise, it is said to be locally inconsistent. 15

16 Example 1/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y 16

17 Example 2/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y {(x,1)} is a locally consistent instantiation as there is no constraint covered by it. 17

18 Example 3/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y {(x,1),(y,0)} is not a locally consistent instantiation since the constraint c xy covered by it is not satisfied by it. 18

19 Example 4/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y {(x,1),(y,1)} is a locally consistent instantiation since the constraint c xy covered by it is satisfied by it. 19

20 Example 5/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y {(x,1),(y,1),(z,0)} is a complete but not locally consistent instantiation since the constraint c xz is not satisfied by it. 20

21 Example 6/6 x ¾ ¼ z ½ ½ ¼ ¾ ¼ ½ ¾ y {(x,1),(y,1),(z,2)} is a complete and locally consistent instantiation since all variables are covered and all constraints satisfied. Question What is the connection with the basic backtracking search algorithm? 21

22 Solution Definition (Solution) A solution of a CN P is a complete instantiation on P that is locally consistent. The set of solutions of P is denoted by sols(p). 22

23 The Constraint Network Note that a CSP instance is trivially unsatisfiable when a domain or a relation is empty. We shall consider all such instances as equivalent, and shall denote by the representative of this implicit equivalence class. Notation Let P be a constraint network. We shall write P = iff x vars(p) dom(x) = or c cons(p) rel(c) =. 23

24 Nogood Definition (Globally Inconsistent Instantiation) An instantiation I on a constraint network P is globally inconsistent iff it cannot be extended to a solution of P, globally consistent otherwise. Definition (Nogood) A globally inconsistent instantiation is also called a (standard) nogood. Remark A locally inconsistent instantiation is a nogood. The reverse is not necessarily true. 24

25 Illustration ¾ ½ {(x a,3),(x b,6),(x c,4),(x d,2),(x e,7)} is locally inconsistent this is a nogood. 25

26 Illustration ¾ ½ {(x a,3),(x b,1),(x c,4),(x d,2)} is globally inconsistent this is a nogood. 26

27 Interest of nogoods? Use it! To make the CN more explicit. 27

28 Nogood Representation The nogood representation x of a variable x is the set of instantiations: { {(x,a)} a dom init (x) \ dom(x) } The nogood representation c of a constraint c, with scp(c) = {x 1,...,x r }, is the set of instantiations: {(x 1,a 1 ),...,(x r,a r )} (a 1,...,a r ) dom init (x) \ rel(c) x scp(c) The nogood representation P of a constraint network P is the set of instantiations: x c x vars(p) c cons(p) 28

29 Example P c xy a 1 a 2 a 3 x = {{(x, a 1 )}} x ỹ = {{(y, b 2 )}, {(y, b 3 )}} b 1 b 2 b 3 y c xy = {{(x, a 1 ), (y, b 3 )}, {(x, a 2 ), (y, b 3 )}, {(x, a 3 ), (y, b 1 )}, {(x, a 3 ), (y, b 2 )}} P = {{(x, a 1 )}, {(y, b 2 )}, {(y, b 3 )}, {(x, a 1 ), (y, b 3 )}, {(x, a 2 ), (y, b 3 )}, {(x, a 3 ), (y, b 1 )}, {(x, a 3 ), (y, b 2 )}} 29

30 General Partial Ordering Definition Let P and P be two CNS such that vars(p) = vars(p ). P P iff P P. P P iff P P. For example, P P : when P is obtained from P by removing some values from variable domains (we also use d ), or when P is obtained from P by removing some tuples from constraint relations. 30

31 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 31

32 Consistencies A consistency is a property defined on CNs. Typically, it reveals some nogoods. We shall only consider nogood-identifying consistencies. A 1-order consistency (or domain-filtering consistency) allows to identify inconsistent values (nogoods of size 1). For example: Generalized Arc Consistency (GAC), Path Inverse Consistency (PIC) Singleton Arc Consistency (SAC) A 2-order consistency allows to identify inconsistent pairs of values (nogoods of size 2). For example: Path Consistency (PC), Dual Consistency (DC), Conservative variants of PC and DC 32

33 The most famous Consistency: GAC Definition (Generalized Arc Consistency) A constraint c is GAC-consistent iff x scp(c), a dom(x), there exists a support for (x,a) on c. A constraint network P is GAC-consistent iff every constraint of P is GAC-consistent. At a finer level, we have: A value (x,a) of P is GAC-consistent iff for every constraint c of P involving x, there exists a support for (x,a) on c. Remark GAC is referred to as Arc Consistency (AC) when constraints are binary. GAC is also called hyper arc-consistency or domain consistency. 33

34 Example ½ ½ ¾ ¾ ½ ¾ ½ Figure: A Sudoku Grid. 34

35 Example dom(x) = {2, 5} w x ½ dom(z) = {2, 5, 8, 9} dom(w) = {3, 5, 7} y z dom(y) = {2, 5, 9} Figure: An alldifferent constraint involving nine variables, of which w, x, y and z are unfixed. The other five variables are fixed. This constraint is not generalized arc-consistent. The values (w,3), (w,5) and (z,8) have no support on this constraint (and are said to be GAC-inconsistent). 35

36 Consistency φ Definition (φ-consistent Network) Let φ be a consistency. A constraint network P is said to be φ-consistent iff the property φ holds on P. Most of the consistencies mentioned in the literature are well-behaved. This means that for any CN P, there exists a greatest φ-consistent network, denoted by φ(p), smaller than (or equal to) P while preserving the set of solutions. Theorem (Monotonicity) Let P and P be two CNs and φ be a well-behaved consistency. P P φ(p) φ(p ) 36

37 Pre-order on Consistencies Definition Let φ and ψ be two consistencies. φ is stronger than (or equivalent to) ψ iff whenever φ holds on a constraint network P, ψ also holds on P. φ is strictly stronger than ψ iff φ is stronger than ψ and there exists at least one constraint network P such that ψ holds on P but not φ. Theorem Let φ and ψ be two well-behaved consistencies. φ is stronger than ψ iff for every CN P, we have φ(p) ψ(p). 37

38 Domain-filtering Consistencies (partial view) È ÖÆÁ Ë ÆÁ ÁÛ ÈÏ ÅÜÊÈ ÈÁ ÅÜÊÈÏ ÖÈÁ Ë φ ψ ÑÒ φ ØÖØÐÝ ØÖÓÒÖ ØÒ ψ ÒÖÝ ÆØÛÓÖ ÆÓÒ¹ÒÖÝ ÆØÛÓÖ 38

39 Defining φ-consistent values To completely define a domain-filtering consistency φ, it is sufficient to define the conditions under which a value (x,a) of a CN P is considered as φ-consistent. A value (x,a) of P is GAC-consistent iff for any constraint c of P involving x, there exists a support for (x,a) on c. A value (x,a) of a P is PIC-consistent iff for every set {y,z} of two variables of P, with x y and x z, there exists b dom(y) and c dom(z) such that {(x,a),(y,b),(z,c)} is locally consistent. A value (x,a) of P is SAC-consistent iff GAC(P x=a )

40 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 40

41 Enforcing GAC on Table Constraints Many schemes/algorithms proposed in the literature: GAC-valid GAC-allowed [BR97] GAC-valid+allowed [LS06] NextIn Indexing [LR05] NextDiff Indexing [GJMN07] Using Tries [GJMN07] Compressed Tables [KW07] Using MDDs [CY10] STR [Ull07, Lec08] Our focus 41

42 A Table Constraint as a MDD table[c xyz ] x y z ½ µ mdd(c xyz ) ¾ µ µ µ µ µ µ µ µ ÐÚÐ ½ ¾ x y z Ø ½¼ µ (a) A table (b) A MDD 42

43 Algorithm 1: enforcegac-mdd(c: MDD constraint): set of variables Output: the set of variables in scp(c) with reduced domain Σ true Σ false foreach variable x scp(c) do gacvalues[x] exploremdd(mdd(c)) // gacvalues is updated during exploration // domains are now updated and X evt computed X evt foreach variable x scp(c) do if gacvalues[x] dom(x) then dom(x) gacvalues[x] X evt X evt {x} return X evt 43

44 Algorithm 2: exploremdd(node: Node): Boolean Output: true iff node is supported if node = t then return true if node Σ true then return true if node Σ false then return false // since we are at a leaf // since already proved to be supported // since already proved to be unsupported x node.variable ; supported false foreach arc node.outs do if arc.value dom(x) then if exploremdd(arc.destination) then supported true gacvalues[x] gacvalues[x] {arc.value} if supported = true then Σ true Σ true {node} else Σ false Σ false {node} return supported 44

45 Simple Tabular Reduction Simple tabular reduction (STR) is an original approach introduced by J. Ullmann. The principle of STR is to dynamically maintain the tables (of supports). To summarize, GAC is enforced while removing invalid tuples, and consequently, only supports are kept in tables. Efficency is obtained by using a sparse set data structure. 45

46 Algorithm 3: STR(c: constraint): set of variables Output: the set of variables in scp(c) with reduced domain foreach variable x scp(c) do gacvalues[x] foreach tuple τ table[c] do if isvalid(c,τ) then foreach variable x scp(c) do if τ[x] / gacvalues[x] then add τ[x] to gacvalues[x] else removetuple(c,τ) // domains are now updated and X evt computed // as in Algorithm

47 Illustration with STR table[c xyz ] x y z µ µ µ µ µ µ µ 47

48 Illustration with STR table[c xyz ] x y z dom(y) dom(x) dom(z) µ µ µ µ µ µ µ 47

49 Illustration with STR table[c xyz ] x y z dom(y) dom(x) dom(z) µ µ µ µ µ µ µ gacv alues[x] = {} gacv alues[y] = {} gacv alues[z] = {} 47

50 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a} gacv alues[y] = {a} gacv alues[z] = {c} 47

51 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a} gacv alues[y] = {a} gacv alues[z] = {c} 47

52 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

53 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

54 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

55 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a, c} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

56 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a, c} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

57 Illustration with STR dom(z) dom(y) dom(x) table[c xyz ] x y z µ µ µ µ µ µ µ gacv alues[x] = {a, c} gacv alues[y] = {a, c} gacv alues[z] = {b, c} 47

58 ÙÖÖÒØ ØÐ Maintaining Current Tables position[c xyz ] table[c xyz ] x y z currentlimit[c xyz ] levellimits[c xyz ] ¾ ½ ¼ ½¼... ¹½ ¹½ ¹½ ½ ¾ ½¼ ½ ¾ ½¼ ½ ¾ ½¼ µ µ µ µ µ µ µ µ µ µ Figure: Initialization of STR data structures for a ternary positive table constraint c xyz. 48

59 ÙÖÖÒØ ØÐ Maintaining Current Tables position[c xyz ] table[c xyz ] x y z currentlimit[c xyz ] levellimits[c xyz ] ¾ ½ ¼... ¹½ ½¼ ¹½ ½ ¾ ½¼ ½ ¾ ½¼ ½ ¾ ½¼ µ µ µ µ µ µ µ µ µ µ Figure: STR applied after the removal of (y,b) at level 1. (z,c) no longer has support and will therefore be deleted. 49

60 ÙÖÖÒØ ØÐ Maintaining Current Tables position[c xyz ] table[c xyz ] x y z currentlimit[c xyz ] levellimits[c xyz ] ¾ ½ ¼... ½¼ ¹½ ½ ¾ ½¼ ½ ¾ ½¼ ½ ¾ ½¼ µ µ µ µ µ µ µ µ µ µ Figure: STR applied after the removal of (y,c) at level 2. No value will be deleted. 50

61 ÙÖÖÒØ ØÐ Maintaining Current Tables position[c xyz ] table[c xyz ] x y z currentlimit[c xyz ] levellimits[c xyz ] ¾ ½ ¼... ¹½ ½¼ ¹½ ½ ¾ ½¼ ½ ¾ ½¼ ½ ¾ ½¼ µ µ µ µ µ µ µ µ µ µ Figure: Structures obtained after the restoration performed at level 1. 51

62 ÙÖÖÒØ ØÐ Maintaining Current Tables position[c xyz ] table[c xyz ] x y z currentlimit[c xyz ] levellimits[c xyz ] ¾ ½ ¼ ½¼... ¹½ ¹½ ¹½ ½ ¾ ½¼ ½ ¾ ½¼ ½ ¾ ½¼ µ µ µ µ µ µ µ µ µ µ Figure: Structures obtained after the restoration performed at level 0. 52

63 Experiments on Crossword Puzzles Class. GAC schemes STR Series val all va str str2 str2+ words-vg5-5 cpu #nodes=38 mem 4.9M 4.9M 4.8M 4.7M 4.8M words-vg5-6 cpu #nodes=718 mem 6.5M 6.5M 6.3M 6.2M 6.3M words-vg5-7 cpu #nodes=6,957 mem 8.4M 8.4M 8.2M 8.1M 8.2M words-vg5-8 cpu #nodes=256k mem 4.6M 10M 10M 10M Crossword puzzles with dictionary words (45,371 words). Time-out of 1,200 seconds set per instance. 53

64 Experiments on Crossword Puzzles Class. GAC schemes STR Series val all va str str2 str2+ uk-vg5-5 cpu #nodes=28 mem 12M 12M 12M 12M 12M uk-vg5-6 cpu #nodes=145 mem 17M 17M 16M 16M 16M uk-vg5-7 cpu #nodes=408 mem 22M 22M 22M 22M 22M uk-vg5-8 cpu #nodes=8,148 mem 12M 12M 11M 11M 11M Crossword puzzles with dictionary uk (225,349 words). Time-out of 1,200 seconds set per instance. 54

65 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 55

66 DC Definition (Dual Consistency - DC) Let P be a constraint network. A locally consistent instantiation {(x,a),(y,b)} on P is DC-consistent iff (y,b) GAC(P x=a ) and (x,a) GAC(P y=b ). P is DC-consistent iff every locally consistent instantiation {(x,a),(y,b)} on P is DC-consistent. 56

67 CDC Definition (Conservative Dual Consistency - CDC) Let P be a constraint network. A locally consistent instantiation {(x,a),(y,b)} on P is CDC-consistent iff either c cons(p) scp(c) = {x,y} or {(x,a),(y,b)} is DC-consistent. P is CDC-consistent iff every locally consistent instantiation {(x,a),(y,b)} on P is CDC-consistent. 57

68 Properties Proposition DC is strictly stronger than PC On binary CNS, DC is equivalent to PC Proposition For any constraint network P, we have: But GAC DC(P) = sdc(p) GAC CDC(P) = scdc(p) AC CPC(P) scpc(p) AC PPC(P) sppc(p). sφ is φ + (G)AC 58

69 Relationships between 2-order Consistencies È ÈÈ ÈÈ È φ ψ ÑÒ φ ØÖØÐÝ ØÖÓÒÖ ØÒ ψ È È 59

70 scdc1 Algorithm 4: scdc1 P GAC(P) ; x first(vars(p)) marker x repeat if dom(x) > 1 then if revise-scdc 1(x) then P GAC(P) ; marker x x nextcircular(x,vars(p)) until x = marker // GAC is initially enforced // GAC is maintained 60

71 scdc1 Algorithm 5: revise-scdc1(var x: variable): Boolean modified false foreach value a dom P (x) do P GAC(P x=a ) ; // Singleton check on (x,a) if P = then remove a from dom P (x) ; // SAC-inconsistent value modified true else foreach constraint c xy cons(p) do foreach value b dom P (y) do if b / dom P (y) then remove (a,b) from rel P (c xy ) ; /* CDC-inconsistent pair of values */ modified true return modified 61

72 Example v w x y z

73 Example v w x y z with wiped-out domain

74 Example v w x y z

75 Example v w x y z

76 Example v w x y z

77 Example v w x y z

78 Example v w x y z

79 Example v w x y z

80 Results spc8 scdc1 sdc2 400 CPU (in seconds) tightness t (in %) Figure: Mean results obtained with PC algorithms on classes of 100 random binary instances of class 50,90,1225,t. 63

81 Impact for Search Instance MAC scdc1-mac scen11-f8 CPU nodes 14,068 4,946 scen11-f6 CPU nodes 302K 145K scen11-f4 CPU nodes 2,826K 1,834K scen11-f3 CPU 2,338 1,725 nodes 12M 5,863K scen11-f2 CPU 7,521 5,872 nodes 37M 21M scen11-f1 CPU 17,409 13,136 nodes 93M 55M 64

82 Impact for Search For the test instance B8x8With2Hints, MAC : 49 runs, 125 seconds scdc1+mac : 45 runs, 72 seconds. 65

83 Outline 1 Introduction 2 Instantiations and Orderings 3 Consistencies 4 Efficient GAC Algorithms for Table Constraints 5 Dual Consistency 6 Consistencies based on Failed Values 66

84 Lemma The following lemma is directly derived from [Freuder and Hubbe, 1993] Lemma If a value (x,a) of a CN P is globally inconsistent then every solution S of P is such that S[x/a] violates at least one constraint of P involving x. If P is a binary CN, then every solution of P necessarily contains a value for a variable y x which is not compatible with (x,a). 67

85 Illustration w x C x I x C y I y C z y I z z Solid edges represent allowed tuples Dashed edges represent forbidden tuples 68

86 Failed Values and Conflict Sets Intuitively, a failed value is a value removed from a CN because it has been proved to be (globally) inconsistent. Definition Let P be a CN, x be a variable of P and a dom init (x). The conflict set of (x,a) on a constraint c of P involving x, denoted by χ(c,x,a), is the set of instantiations I of scp(c) \ {x} on P such that I {(x,a)} does not satisfy c. The conflict set of (x,a) on P is χ(x,a) = c cons(p) x scp(c) χ(c,x,a). 69

87 Conflict Sets a b c x a b c w y a b c a b c z χ(w, a) = {} χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

88 Conflict Sets a b c x a b c w y a b c a b c z χ(w, a) = {{(x, b)}, χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

89 Conflict Sets a b c x a b c w y a b c a b c z χ(w, a) = {{(x, b)}, {(y, a), (z, a)}} χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

90 Conflict Sets a b c x a b c w y a b c a b c z χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

91 Conflict Sets a b c x a b c w y a b c a b c z χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

92 Conflict Sets a b c x a b c w y a b c a b c z χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

93 Conflict Sets a b c x a b c w y a b c a b c z χ(w, a) = {{(x, b)}, {(y, a), (z, a)}} χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 70

94 FVC Definition Let (x,a) be a failed value of a CN P and I an instantiation on P. (x,a) is covered by I iff vars(χ(x,a)) vars(i ). (x,a) is verified by I iff J χ(x,a) J I. Definition ([LR09]) Let P be a constraint network. An instantiation I on P is FVC-consistent for a failed value (x,a) of P iff either (x,a) is not covered by I or (x,a) is verified by I. An instantiation I on P is FVC-consistent iff it is FVC-consistent for every failed value of P; otherwise, I is said to be FVC-inconsistent. 71

95 Illustration of FVC a b c x a b c w y a b c a b c z (w, c) Ð ÚÐÙ ÙÑÔØÓÒµ χ(w, c) = {{(x, b)}, {(x, c)}, {(y, c), (z, c)}} 72

96 Illustration of FVC a b c x a b c w y a b c a b c z I = {(x, a), (y, c), (z, c)} ÚÖ (w, c) Ù I ÓÒØÒ {(y, c), (z, c)} χ(w, c) 72

97 Illustration of FVC a b c x a b c w y a b c a b c z I = {(x, a)} ιÓÒ ØÒØ Ù (w, c) ÒÓØ ÓÚÖ Ý I 72

98 Illustration of FVC a b c x a b c w y a b c a b c z I = {(x, a), (y, a), (z, a)} ιÒÓÒ ØÒØ Ù (w, c) ÓÚÖ Ò ÒÓØ ÚÖ Ý I 72

99 Proposition Proposition Any FVC-inconsistent instantiation is globally inconsistent. Otherwise stated, some nogoods can be identified via deleted values (that are themselves nogoods). These nogoods are not necessarily of size 1. 73

100 Illustration w x C x I x C y I y C z y I z z Every tuple in C x C y C z is a nogood (of size 3) 74

101 AFVC Definition Let P be a constraint network. A value (x,a) of P is AFVC-consistent for a failed value (y,b) of P iff (x,a) can be extended to a locally consistent instantiation verifying (y,b). A value (x,a) of P is AFVC-consistent iff (x,a) is AFVC-consistent for every failed value of P; otherwise, (x,a) is said to be AFVC-inconsistent. P is AFVC-consistent iff every value of P is AFVC-consistent. 75

102 Proposition Proposition Any AFVC-inconsistent value is globally inconsistent. Note that: AFVC is a domain-filtering consistency AFVC can be regarded as a local consistency since it suffices to reason from the conflict set of each failed value. In particular for binary constraints, a value (x,a) is AFVC-consistent for a failed value (y,b) iff (x,a) is compatible with a valid value in χ(y,b). 76

103 Illustration of AFVC w a b... x a b c z a b a c y (w, a) Ð ÚÐÙ ÙÑÔØÓÒµ χ(w, a) = {{(x, a)}, {(y, c)}} 77

104 Illustration of AFVC w a b... x a b c z a b a c y (w, b) ιÒÓÒ ØÒØ Ò (w, b) ÒÓÑÔØÐ ÛØ ÚÐÙ Ò χ(w, a) 77

105 Illustration of AFVC w a b... x a b c a b z... a c y (z, a) ιÒÓÒ ØÒØ Ò (z, a) ÒÓÑÔØÐ ÛØ ÚÐÙ Ò χ(w, a) 77

106 Hierarchy of consistencies ÅÜÎ ÈÁÎ ËÎ Î ØÖØÐÝ ØÖÓÒÖ ÒÓÑÔÖÐ 78

107 Preliminary Results (binary instances) MAC MAC+FVC MAC+AFVC Instance CPU nodes CPU nodes CPU nodes Graph coloring 1-fullins M , ,636 2-fullins , , ,764 2-insertions , , ,753 2-insertions , , ,941 Composed composed M M M333 composed M , ,636 Job-shop os-taillard M , ,845 os-taillard , , ,818 os-taillard , , ,226 Queen Attacking qa , , ,940 qa M M M576 79

108 K.R. Apt. Principles of Constraint Programming. Cambridge University Press, C. Bessiere. Constraint propagation. In Handbook of Constraint Programming, chapter 3. Elsevier, C. Bessiere and J. Régin. Arc consistency for general constraint networks: preliminary results. In Proceedings of IJCAI 97, pages , K. Cheng and R. Yap. An mdd-based generalized arc consistency algorithm for positive and negative table constraints and some global constraints. Constraints, 15(2): , R. Dechter. Constraint processing. Morgan Kaufmann,

109 I.P. Gent, C. Jefferson, I. Miguel, and P. Nightingale. Data structures for generalised arc consistency for extensional constraints. In Proceedings of AAAI 07, pages , G. Katsirelos and T. Walsh. A compression algorithm for large arity extensional constraints. In Proceedings of CP 07, pages , C. Lecoutre. Optimization of simple tabular reduction for table constraints. In Proceedings of CP 08, pages , C. Lecoutre. Constraint networks: techniques and algorithms. ISTE/Wiley, O. Lhomme and J.C. Régin. A fast arc consistency algorithm for n-ary constraints. In Proceedings of AAAI 05, pages ,

110 C. Lecoutre and O. Roussel. Failed value consistencies for constraint satisfaction. In Proceedings of CP 09, pages , C. Lecoutre and R. Szymanek. Generalized arc consistency for positive table constraints. In Proceedings of CP 06, pages , F. Rossi, P. van Beek, and T. Walsh, editors. Handbook of Constraint Programming. Elsevier, C. Solnon. Ant Colony Optimization and Constraint Programming. ISTE/Wiley, E. Tsang. Foundations of constraint satisfaction. Academic Press, J.R. Ullmann. 79

111 Partition search for non-binary constraint satisfaction. Information Science, 177: , P. van Hentenryck and L. Michel. Constraint-based local search. MIT Press,

Sliced Table Constraints: Combining Compression and Tabular Reduction

Sliced Table Constraints: Combining Compression and Tabular Reduction Sliced Table Constraints: Combining Compression and Tabular Reduction Nebras Gharbi, Fred Hemery, Christophe Lecoutre, and Olivier Roussel CRIL - CNRS UMR 8188, Université Lille Nord de France, Artois,

More information

STR2 Optimized Simple Tabular Reduction for Table Constraints

STR2 Optimized Simple Tabular Reduction for Table Constraints STR2 Optimized Simple Tabular Reduction for Table Constraints Christophe Lecoutre CRIL-CNRS UMR 8188 Université d artois, France lecoutre@cril.fr Abstract Table constraints play an important role within

More information

STR2: optimized simple tabular reduction for table constraints

STR2: optimized simple tabular reduction for table constraints Constraints (2011) 16:341 371 DOI 10.1007/s10601-011-9107-6 STR2: optimized simple tabular reduction for table constraints Christophe Lecoutre Published online: 30 March 2011 SpringerScience+BusinessMedia,LLC2011

More information

Path Consistency by Dual Consistency

Path Consistency by Dual Consistency Path Consistency by Dual Consistency Christophe Lecoutre, Stéphane Cardon, and Julien Vion CRIL CNRS FRE 2499, rue de l université, SP 16 62307 Lens cedex, France {lecoutre, cardon, vion}@cril.univ-artois.fr

More information

Dual Consistency for Non-binary Constraint Networks

Dual Consistency for Non-binary Constraint Networks Dual Consistency for Non-binary Constraint Networks EMN Research Report nb. 09/04/INFO Julien Vion julien.vion@emn.fr École des Mines de Nantes, LINA UMR CNRS 6241, 4, rue Alfred Kastler, FR-44307 Nantes,

More information

A Greedy Approach to Establish Singleton Arc Consistency

A Greedy Approach to Establish Singleton Arc Consistency A Greedy Approach to Establish Singleton Arc Consistency Christophe Lecoutre and Stéphane Cardon CRIL-CNRS FRE 2499, Université d Artois Lens, France {lecoutre, cardon}@cril.univ-artois.fr Abstract In

More information

Extending Compact-Table to Negative and Short Tables

Extending Compact-Table to Negative and Short Tables Extending Compact-Table to Negative and Short Tables Hélène Verhaeghe 1 and Christophe Lecoutre 2 and Pierre Schaus 1 1 UCLouvain, ICTEAM, Place Sainte Barbe 2, 1348 Louvain-la-Neuve, Belgium, {f irstname.lastname}@uclouvain.be

More information

Document type : Communication à un colloque (Conference Paper)

Document type : Communication à un colloque (Conference Paper) "Efficient Reification of Table Constraints" Khong, Minh Thanh ; Deville, Yves ; Schaus, Pierre ; Lecoutre, Christophe Abstract Reifying a constraint c consists in associating a Boolean variable b with

More information

Optimizing STR Algorithms with Tuple Compression

Optimizing STR Algorithms with Tuple Compression Optimizing STR Algorithms with Tuple Compression Wei Xia and Roland H.C. Yap School of Computing National University of Singapore {xiawei, ryap}@comp.nus.edu.sg Abstract. Table constraints define an arbitrary

More information

The Tractability of Global Constraints

The Tractability of Global Constraints The Tractability of Global Constraints Christian Bessiere ½, Emmanuel Hebrard ¾, Brahim Hnich ¾, and Toby Walsh ¾ ¾ ½ LIRMM-CNRS, Montpelier, France. bessiere@lirmm.fr Cork Constraint Computation Center,

More information

Compact-Table: Efficiently Filtering Table Constraints with Reversible Sparse Bit-Sets

Compact-Table: Efficiently Filtering Table Constraints with Reversible Sparse Bit-Sets Compact-Table: Efficiently Filtering Table Constraints with Reversible Sparse Bit-Sets Jordan Demeulenaere 1, Renaud Hartert 1, Christophe Lecoutre 2, Guillaume Perez 3, Laurent Perron 4, Jean-Charles

More information

Last Conflict based Reasoning

Last Conflict based Reasoning Last Conflict based Reasoning Christophe Lecoutre and Lakhdar Sais and Sébastien Tabary and Vincent Vidal 1 Abstract. In this paper, we propose an approach to guide search to sources of conflicts. The

More information

Constraint Propagation: The Heart of Constraint Programming

Constraint Propagation: The Heart of Constraint Programming Constraint Propagation: The Heart of Constraint Programming Zeynep KIZILTAN Department of Computer Science University of Bologna Email: zeynep@cs.unibo.it URL: http://zeynep.web.cs.unibo.it/ What is it

More information

A Fast Arc Consistency Algorithm for n-ary Constraints

A Fast Arc Consistency Algorithm for n-ary Constraints A Fast Arc Consistency Algorithm for n-ary Constraints Olivier Lhomme 1 and Jean-Charles Régin 2 1 ILOG, 1681, route des Dolines, 06560 Valbonne, FRANCE 2 Computing and Information Science, Cornell University,

More information

05 - Constraints Programming

05 - Constraints Programming 05 - Constraints Programming Artificial Intelligence J. BUISINE 1 1 IT Student at ULCO Calais February 22, 2018 J. BUISINE (ULCO Calais) 05 - Constraints Programming February 22, 2018 1 / 48 Summary 1

More information

Extending Simple Tabular Reduction with Short Supports

Extending Simple Tabular Reduction with Short Supports Extending Simple Tabular Reduction with Short Supports Christopher Jefferson, Peter Nightingale School of Computer Science, University of St Andrews, St Andrews, Fife KY16 9SX, UK {caj21,pwn1}@st-andrews.ac.uk

More information

Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results

Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results Journal of Artificial Intelligence Research 24 (2005) 641-684 Submitted 04/05; published 11/05 Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results Nikolaos

More information

Global Inverse Consistency for Interactive Constraint Satisfaction?

Global Inverse Consistency for Interactive Constraint Satisfaction? Global Inverse Consistency for Interactive Constraint Satisfaction? Christian Bessiere 1,Hélène Fargier 2, and Christophe Lecoutre 3 1 LIRMM-CNRS, University of Montpellier, France 2 IRIT-CNRS, University

More information

A Generic Scheme for Integrating Strong Local Consistencies into Constraint Solvers

A Generic Scheme for Integrating Strong Local Consistencies into Constraint Solvers A Generic Scheme for Integrating Strong Local Consistencies into Constraint Solvers Julien Vion, Thierry Petit, and Narendra Jussien École des Mines de Nantes, LINA UMR CNRS 6241, 4, rue Alfred Kastler,

More information

Decomposable Constraints

Decomposable Constraints Decomposable Constraints Ian Gent 1, Kostas Stergiou 2, and Toby Walsh 3 1 University of St Andrews, St Andrews, Scotland. ipg@dcs.st-and.ac.uk 2 University of Strathclyde, Glasgow, Scotland. ks@cs.strath.ac.uk

More information

Domain k-wise Consistency Made as Simple as Generalized Arc Consistency

Domain k-wise Consistency Made as Simple as Generalized Arc Consistency Domain k-wise Consistency Made as Simple as Generalized Arc Consistency Jean-Baptiste Mairy 1, Yves Deville 1, and Christophe Lecoutre 2 1 ICTEAM, Université catholique de Louvain, Belgium {jean-baptiste.mairy,

More information

The Smart Table Constraint

The Smart Table Constraint The Smart Table Constraint Jean-Baptiste Mairy 1, Yves Deville 1, and Christophe Lecoutre 2 1 ICTEAM, Université catholique de Louvain, Belgium {jean-baptiste.mairy, yves.deville}@uclouvain.be 2 CRIL-CNRS

More information

Constraint Networks. Constraint networks. Definition. Normalized. Constraint Networks. Deduction. Constraint. Networks and Graphs. Solving.

Constraint Networks. Constraint networks. Definition. Normalized. Constraint Networks. Deduction. Constraint. Networks and Graphs. Solving. 1 Satisfaction Problems Albert-Ludwigs-Universität Freiburg networks networks and Stefan Wölfl, Christian Becker-Asano, and Bernhard Nebel October 27, 2014 October 27, 2014 Wölfl, Nebel and Becker-Asano

More information

Binary vs. non-binary constraints

Binary vs. non-binary constraints Artificial Intelligence 140 (2002) 1 37 www.elsevier.com/locate/artint Binary vs. non-binary constraints Fahiem Bacchus a, Xinguang Chen b, Peter van Beek c,, Toby Walsh d a Department of Computer Science,

More information

Binary vs. Non-Binary Constraints

Binary vs. Non-Binary Constraints Binary vs. Non-Binary Constraints Fahiem Bacchus Department of Computer Science University of Toronto Toronto, Canada fbacchus@cs.toronto.edu Xinguang Chen Department of Computing Science University of

More information

A strong local consistency for constraint satisfaction

A strong local consistency for constraint satisfaction A strong local consistency for constraint satisfaction Romuald Debruyne Ecole des Mines de Nantes 4, rue Alfred Kastler, La Chantrerie 4437 Nantes cedex 3 - France Email: debruyne@lirmm.fr Abstract Filtering

More information

Unifying and extending hybrid tractable classes of CSPs

Unifying and extending hybrid tractable classes of CSPs Journal of Experimental & Theoretical Artificial Intelligence Vol. 00, No. 00, Month-Month 200x, 1 16 Unifying and extending hybrid tractable classes of CSPs Wady Naanaa Faculty of sciences, University

More information

On Path Consistency for Binary Constraint Satisfaction Problems

On Path Consistency for Binary Constraint Satisfaction Problems University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln Computer Science and Engineering: Theses, Dissertations, and Student Research Computer Science and Engineering, Department

More information

Maintaining Arc Consistency with Multiple Residues

Maintaining Arc Consistency with Multiple Residues Maintaining Arc Consistency with Multiple Residues Christophe Lecoutre CRIL-CNRS FRE 4, Université d Artois, Lens, France Chavalit Likitvivatanavong School of Computing, National University of Singapore,

More information

A compression algorithm for large arity extensional constraints

A compression algorithm for large arity extensional constraints A compression algorithm for large arity extensional constraints George Katsirelos and Toby Walsh NICTA and UNSW [george.katsirelos, toby.walsh]@nicta.com.au Abstract. We present an algorithm for compressing

More information

Handbook of Constraint Programming

Handbook of Constraint Programming Handbook of Constraint Programming Francesca Rossi, Peter van Beek, Toby Walsh Elsevier Contents Contents v I First part 1 1 Modelling 3 Barbara M. Smith 1.1 Preliminaries... 4 1.2 Representing a Problem.....

More information

Constraint (Logic) Programming

Constraint (Logic) Programming Constraint (Logic) Programming Roman Barták Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic bartak@ktiml.mff.cuni.cz Sudoku Combinatorial puzzle, whose goal is to enter

More information

2-C3OP: An Improved Version of 2-Consistency

2-C3OP: An Improved Version of 2-Consistency -COP: An Improved Version of -Consistency Marlene Arangú, Miguel A. Salido, Federico Barber Instituto de Automática e Informática Industrial Universidad Politécnica de Valencia. Valencia, Spain Abstract

More information

Optimal and Suboptimal Singleton Arc Consistency Algorithms

Optimal and Suboptimal Singleton Arc Consistency Algorithms Optimal and Suboptimal Singleton Arc Consistency Algorithms Christian Bessiere LIRMM (CNRS / University of Montpellier) 161 rue Ada, Montpellier, France bessiere@lirmm.fr Romuald Debruyne École des Mines

More information

Consistency and Set Intersection

Consistency and Set Intersection Consistency and Set Intersection Yuanlin Zhang and Roland H.C. Yap National University of Singapore 3 Science Drive 2, Singapore {zhangyl,ryap}@comp.nus.edu.sg Abstract We propose a new framework to study

More information

Maintaining Arc Consistency with Multiple Residues

Maintaining Arc Consistency with Multiple Residues Constraint Programming Letters (00) 3 Submitted 4/007; Published /00 Maintaining Arc Consistency with Multiple Residues Christophe Lecoutre CRIL-CNRS FRE 4, Université d Artois, Lens, France Chavalit Likitvivatanavong

More information

Constraint Satisfaction Problems. Constraint Satisfaction Problems. Constraint networks. 1 Constraint Networks. 1 Constraint Networks

Constraint Satisfaction Problems. Constraint Satisfaction Problems. Constraint networks. 1 Constraint Networks. 1 Constraint Networks Constraint Satisfaction Problems May 7, 2012 Constraint Satisfaction Problems Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg May 7, 2012 1 2 3 and Graphs 4 Solving Nebel,

More information

Adaptive Singleton-Based Consistencies

Adaptive Singleton-Based Consistencies Proceedings of the Twenty-Eighth AAAI Conference on Artificial Intelligence Adaptive Singleton-Based Consistencies Amine Balafrej CNRS, U. Montpellier, France U. Mohammed V Agdal, Morocco Christian Bessiere

More information

VALCSP solver : a combination of Multi-Level Dynamic Variable Ordering with Constraint Weighting

VALCSP solver : a combination of Multi-Level Dynamic Variable Ordering with Constraint Weighting VALCS solver : a combination of Multi-Level Dynamic Variable Ordering with Constraint Weighting Assef Chmeiss, Lakdar Saïs, Vincent Krawczyk CRIL - University of Artois - IUT de Lens Rue Jean Souvraz -

More information

Modelling for Constraint Programming

Modelling for Constraint Programming Modelling for Constraint Programming Barbara M. Smith Cork Constraint Computation Centre, University College Cork, Ireland September 2005 1 Introduction Constraint programming can be a successful technology

More information

Revisiting Neighborhood Inverse Consistency on Binary CSPs

Revisiting Neighborhood Inverse Consistency on Binary CSPs Revisiting Neighborhood Inverse Consistency on Binary CSPs Robert J. Woodward 1, Shant Karakashian 1,BertheY.Choueiry 1,and Christian Bessiere 2 1 Constraint Systems Laboratory, University of Nebraska-Lincoln,

More information

A New Algorithm for Singleton Arc Consistency

A New Algorithm for Singleton Arc Consistency A New Algorithm for Singleton Arc Consistency Roman Barták, Radek Erben Charles University, Institute for Theoretical Computer Science Malostranské nám. 2/25, 118 Praha 1, Czech Republic bartak@kti.mff.cuni.cz,

More information

An Alldifferent Constraint Solver in SMT

An Alldifferent Constraint Solver in SMT An Alldifferent Constraint Solver in SMT Milan Banković and Filip Marić Faculty of Mathematics, University of Belgrade (milan filip)@matf.bg.ac.rs May 16, 2010 Abstract The finite domain alldifferent constraint,

More information

Unrestricted Nogood Recording in CSP search

Unrestricted Nogood Recording in CSP search Unrestricted Nogood Recording in CSP search George Katsirelos and Fahiem Bacchus Department of Computer Science, University Of Toronto, Toronto, Ontario, Canada [gkatsi,fbacchus]@cs.toronto.edu Abstract.

More information

A CSP Search Algorithm with Reduced Branching Factor

A CSP Search Algorithm with Reduced Branching Factor A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il

More information

Implementing Logical Connectives in Constraint Programming

Implementing Logical Connectives in Constraint Programming Implementing Logical Connectives in Constraint Programming Christopher Jefferson, Neil CA Moore, Peter Nightingale, Karen E Petrie* * School of Computing, University of Dundee, Dundee DD1 4HN, UK email:

More information

Scan Scheduling Specification and Analysis

Scan Scheduling Specification and Analysis Scan Scheduling Specification and Analysis Bruno Dutertre System Design Laboratory SRI International Menlo Park, CA 94025 May 24, 2000 This work was partially funded by DARPA/AFRL under BAE System subcontract

More information

Propagate the Right Thing: How Preferences Can Speed-Up Constraint Solving

Propagate the Right Thing: How Preferences Can Speed-Up Constraint Solving Propagate the Right Thing: How Preferences Can Speed-Up Constraint Solving Christian Bessiere Anais Fabre* LIRMM-CNRS (UMR 5506) 161, rue Ada F-34392 Montpellier Cedex 5 (bessiere,fabre}@lirmm.fr Ulrich

More information

Un Algorithme Optimal de Filtrage pour Contraintes Table

Un Algorithme Optimal de Filtrage pour Contraintes Table Un Algorithme Optimal de Filtrage pour Contraintes Table JB Mairy Pascal Van Hentenryck Yves Deville JFPC 2013 1 Table Constraints x y z a b a b c b a a a c b b b b a c a c c b a c b c c c a c c b c c

More information

Exploiting Short Supports for Improved Encoding of Arbitrary Constraints into SAT

Exploiting Short Supports for Improved Encoding of Arbitrary Constraints into SAT Exploiting Short Supports for Improved Encoding of Arbitrary Constraints into SAT Özgür Akgün, Ian P. Gent, Christopher Jefferson, Ian Miguel, Peter Nightingale School of Computer Science, University of

More information

Crossword Puzzles as a Constraint Problem

Crossword Puzzles as a Constraint Problem Crossword Puzzles as a Constraint Problem Anbulagan and Adi Botea NICTA and Australian National University, Canberra, Australia {anbulagan,adi.botea}@nicta.com.au Abstract. We present new results in crossword

More information

Disjoint, Partition and Intersection Constraints for Set and Multiset Variables

Disjoint, Partition and Intersection Constraints for Set and Multiset Variables Disjoint, Partition and Intersection Constraints for Set and Multiset Variables Christian Bessiere ½, Emmanuel Hebrard ¾, Brahim Hnich ¾, and Toby Walsh ¾ ¾ ½ LIRMM, Montpelier, France. Ö Ð ÖÑÑ Ö Cork

More information

Efficient Algorithms for Functional Constraints

Efficient Algorithms for Functional Constraints Efficient Algorithms for Functional Constraints Yuanlin Zhang 1, Roland HC Yap 2, Chendong Li 1, and Satyanarayana Marisetti 1 1 Texas Tech University, USA 2 National University of Singapore, Singapore

More information

Improving GAC-4 for Table and MDD Constraints

Improving GAC-4 for Table and MDD Constraints Improving GAC-4 for Table and MDD Constraints Guillaume Perez, Jean-Charles Régin To cite this version: Guillaume Perez, Jean-Charles Régin. Improving GAC-4 for Table and MDD Constraints. CP 2014, Sep

More information

CMU-Q Lecture 7: Searching in solution space Constraint Satisfaction Problems (CSPs) Teacher: Gianni A. Di Caro

CMU-Q Lecture 7: Searching in solution space Constraint Satisfaction Problems (CSPs) Teacher: Gianni A. Di Caro CMU-Q 15-381 Lecture 7: Searching in solution space Constraint Satisfaction Problems (CSPs) Teacher: Gianni A. Di Caro AI PLANNING APPROACHES SO FAR Goal: Find the (best) sequence of actions that take

More information

Class2: Constraint Networks Rina Dechter

Class2: Constraint Networks Rina Dechter Algorithms for Reasoning with graphical models Class2: Constraint Networks Rina Dechter dechter1: chapters 2-3, Dechter2: Constraint book: chapters 2 and 4 Text Books Road Map Graphical models Constraint

More information

Conflict based Backjumping for Constraints Optimization Problems

Conflict based Backjumping for Constraints Optimization Problems Conflict based Backjumping for Constraints Optimization Problems Roie Zivan and Amnon Meisels {zivanr,am}@cs.bgu.ac.il Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105,

More information

A Uniform View of Backtracking

A Uniform View of Backtracking A Uniform View of Backtracking Fahiem Bacchus 1 Department. of Computer Science, 6 Kings College Road, University Of Toronto, Toronto, Ontario, Canada, M5S 1A4, fbacchus@cs.toronto.edu? Abstract. Backtracking

More information

Constraint Reasoning Part 2: SAT, PB, WCSP

Constraint Reasoning Part 2: SAT, PB, WCSP Constraint Reasoning Part 2: SAT, PB, WCSP Olivier ROUSSEL roussel@cril.univ-artois.fr CRIL-CNRS UMR 8188 Université d Artois Lens, France Tutorial ECAI 2012 Montpellier August, 22 2012 Constraint Reasoning

More information

is a kind of generalization of AC-3 to non-binary constraints. As AC-3, that algorithm has a bad worst-case time complexity (O(er 2 d r+1 ), with e th

is a kind of generalization of AC-3 to non-binary constraints. As AC-3, that algorithm has a bad worst-case time complexity (O(er 2 d r+1 ), with e th Arc consistency for general constraint networks: preliminary results Christian Bessiere LIRMM{CNRS (UMR 5506) 161 rue Ada 34392 Montpellier cedex 5, France Email: bessiere@lirmm.fr Jean-Charles Regin ILOG

More information

A Propagator Design Framework for Constraints over Sequences

A Propagator Design Framework for Constraints over Sequences A Propagator Design Framework for Constraints over Sequences Jean-Noël Monette and Pierre Flener and Justin Pearson Uppsala University, Dept of Information Technology 751 05 Uppsala, Sweden FirstName.LastName@it.uu.se

More information

Constrained Decision Diagrams

Constrained Decision Diagrams Constrained Decision Diagrams Kenil C.K. Cheng and Roland H.C. Yap National University of Singapore 3 Science Drive 2, Singapore {chengchi,ryap}@comp.nus.edu.sg Abstract A general n-ary constraint is usually

More information

use Golomb rulers to study the effect on performance of alternative models, algorithms and heuristics. Finally, avariety of studies have shown how the

use Golomb rulers to study the effect on performance of alternative models, algorithms and heuristics. Finally, avariety of studies have shown how the Constraint Programming Lessons Learned from Crossword Puzzles Adam Beacham, Xinguang Chen, Jonathan Sillito, and Peter van Beek Department of Computing Science University of Alberta Edmonton, Alberta,

More information

Solving Constraint Problems in Constraint Programming

Solving Constraint Problems in Constraint Programming Solving Constraint Problems in Constraint Programming Zeynep KIZILTAN Department of Computer Science University of Bologna Email: zeynep@cs.unibo.it What is it about? 10 hour lectures about the core of

More information

Artificial Intelligence

Artificial Intelligence Artificial Intelligence 172 (2008) 1605 1612 Contents lists available at ScienceDirect Artificial Intelligence www.elsevier.com/locate/artint Properties of tree convex constraints, Yuanlin Zhang a,, Eugene

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

Set 5: Constraint Satisfaction Problems

Set 5: Constraint Satisfaction Problems Set 5: Constraint Satisfaction Problems ICS 271 Fall 2012 Rina Dechter ICS-271:Notes 5: 1 Outline The constraint network model Variables, domains, constraints, constraint graph, solutions Examples: graph-coloring,

More information

Class2: Constraint Networks Rina Dechter

Class2: Constraint Networks Rina Dechter Algorithms for Reasoning with graphical models Class2: Constraint Networks Rina Dechter Dbook: chapter 2-3, Constraint book: chapters 2 and 4 Text Books Road Map Graphical models Constraint networks Model

More information

Arc Consistency for Dynamic CSPs

Arc Consistency for Dynamic CSPs Arc Consistency for Dynamic CSPs Malek Mouhoub mouhoubm@cs.uregina.ca Department of Computer Science, University of Regina 3737 Waskana Parkway, Regina SK, Canada, S4S 0A2 ABSTRACT Constraint Satisfaction

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Greedy Local Search Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 19, 2007 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

University of the Aegean Department of Information and Communication Systems Engineering Artificial Intelligence Laboratory

University of the Aegean Department of Information and Communication Systems Engineering Artificial Intelligence Laboratory University of the Aegean Department of Information and Communication Systems Engineering Artificial Intelligence Laboratory Adaptive Strategies for Solving Constraint Satisfaction Problems Thanasis Balafoutis

More information

On forward checking for non-binary constraint satisfaction

On forward checking for non-binary constraint satisfaction Artificial Intelligence 141 (2002) 205 224 www.elsevier.com/locate/artint Research Note On forward checking for non-binary constraint satisfaction Christian Bessière a,1,, Pedro Meseguer b, Eugene C. Freuder

More information

Backtracking Search (CSPs)

Backtracking Search (CSPs) CSC384: Intro to Artificial Intelligence Backtracking Search (CSPs STATE REPRESENTATION: Factored representation of state ALGORITHMS: general purpose for particular types of constraints (versus problem

More information

The Inverse of a Schema Mapping

The Inverse of a Schema Mapping The Inverse of a Schema Mapping Jorge Pérez Department of Computer Science, Universidad de Chile Blanco Encalada 2120, Santiago, Chile jperez@dcc.uchile.cl Abstract The inversion of schema mappings has

More information

Constraint Satisfaction Problems (CSPs)

Constraint Satisfaction Problems (CSPs) Constraint Satisfaction Problems (CSPs) CPSC 322 CSP 1 Poole & Mackworth textbook: Sections 4.0-4.2 Lecturer: Alan Mackworth September 28, 2012 Problem Type Static Sequential Constraint Satisfaction Logic

More information

Conflict Directed Backjumping for Max-CSPs

Conflict Directed Backjumping for Max-CSPs Conflict Directed Backjumping for Max-CSPs Roie Zivan and Amnon Meisels, Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel Abstract Max-CSPs are Constraint

More information

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 30 January, 2018

DIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 30 January, 2018 DIT411/TIN175, Artificial Intelligence Chapter 7: Constraint satisfaction problems CHAPTER 7: CONSTRAINT SATISFACTION PROBLEMS DIT411/TIN175, Artificial Intelligence Peter Ljunglöf 30 January, 2018 1 TABLE

More information

Solving quantified constraint satisfaction problems

Solving quantified constraint satisfaction problems Artificial Intelligence 172 (2008) 738 771 www.elsevier.com/locate/artint Solving quantified constraint satisfaction problems Ian P. Gent a, Peter Nightingale a, Andrew Rowley a, Kostas Stergiou b, a School

More information

Set 5: Constraint Satisfaction Problems Chapter 6 R&N

Set 5: Constraint Satisfaction Problems Chapter 6 R&N Set 5: Constraint Satisfaction Problems Chapter 6 R&N ICS 271 Fall 2017 Kalev Kask ICS-271:Notes 5: 1 The constraint network model Outline Variables, domains, constraints, constraint graph, solutions Examples:

More information

Solving Quantified Constraint Satisfaction Problems

Solving Quantified Constraint Satisfaction Problems Solving Quantified Constraint Satisfaction Problems Ian P. Gent Peter Nightingale Andrew Rowley School of Computer Science, University of St Andrews St Andrews, Fife, KY16 9SS, UK. {ipg,pn,agdr}@dcs.st-and.ac.uk

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg April 23, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint Satisfaction Problems

More information

CONSTRAINT Networks Chapters 1-2

CONSTRAINT Networks Chapters 1-2 CONSTRAINT Networks Chapters 1-2 Compsci-275 Fall 2010 Fall 2010 1 Class Information Instructor: Rina Dechter Days: Time: Tuesday & Thursday 11:00-12:20 pm Class page: http://www.ics.uci.edu/~dechter/ics-275a/fall-2010/

More information

Probabilistic Consistency Boosts MAC and SAC

Probabilistic Consistency Boosts MAC and SAC Probabilistic Consistency Boosts MAC and SAC Deepak Mehta and M.R.C. van Dongen Computer Science Department, University College Cork, Ireland Abstract Constraint Satisfaction Problems (CSPs) are ubiquitous

More information

Exploring Parameterized Relational Consistency

Exploring Parameterized Relational Consistency University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln CSE Technical reports Computer Science and Engineering, Department of 2009 Exploring Parameterized Relational Consistency

More information

A FILTERING TECHNIQUE TO ACHIEVE 2-CONSISTENCY IN CONSTRAINT SATISFACTION PROBLEMS. Marlene Arangú, Miguel A. Salido and Federico Barber

A FILTERING TECHNIQUE TO ACHIEVE 2-CONSISTENCY IN CONSTRAINT SATISFACTION PROBLEMS. Marlene Arangú, Miguel A. Salido and Federico Barber International Journal of Innovative Computing, Information and Control ICIC International c 2012 ISSN 1349-4198 Volume 8, Number 6, June 2012 pp. 3891 3906 A FILTERING TECHNIQUE TO ACHIEVE 2-CONSISTENCY

More information

A Comparison of Structural CSP Decomposition Methods

A Comparison of Structural CSP Decomposition Methods A Comparison of Structural CSP Decomposition Methods Georg Gottlob Institut für Informationssysteme, Technische Universität Wien, A-1040 Vienna, Austria. E-mail: gottlob@dbai.tuwien.ac.at Nicola Leone

More information

Introduction. Bernhard Nebel, Julien Hué, and Stefan Wölfl. April 23, 2012

Introduction. Bernhard Nebel, Julien Hué, and Stefan Wölfl. April 23, 2012 Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg April 23, 2012 s s What is a constraint? 1 a: the act of constraining b: the state of being checked, restricted, or compelled

More information

Class 2 Constraint Networks

Class 2 Constraint Networks Class 2 Constraint Networks The constraint network model Inference. 1 Road Map (classes 2 3) The constraint network model Inference Search Hybrids of search and inference 2 Constraint Networks A Example:

More information

The Systematic Generation of Channelling Constraints

The Systematic Generation of Channelling Constraints The Systematic Generation of Channelling Constraints Bernadette Martínez-Hernández and Alan M. Frisch Artificial Intelligence Group, Dept. of Computer Science, Univ. of York, York, UK Abstract. The automatic

More information

A Fast and Simple Algorithm for Bounds Consistency of the AllDifferent Constraint

A Fast and Simple Algorithm for Bounds Consistency of the AllDifferent Constraint A Fast and Simple Algorithm for Bounds Consistency of the AllDifferent Constraint Alejandro Lopez-Ortiz 1, Claude-Guy Quimper 1, John Tromp 2, Peter van Beek 1 1 School of Computer Science 2 C WI University

More information

Using auxiliary variables and implied constraints to model non-binary problems

Using auxiliary variables and implied constraints to model non-binary problems Using auxiliary variables and implied constraints to model non-binary problems Barbara Smith School of Computer Studies University of Leeds Leeds LS2 9JT England bms@scs.leeds.ac.uk Kostas Stergiou Department

More information

Constraint Satisfaction Problems (Backtracking Search)

Constraint Satisfaction Problems (Backtracking Search) CSC8:"Introducon"to"Arficial"Intelligence" Constraint Satisfaction Problems (Backtracking Search) Chapter 6 6.: Formalism 6.: Constraint Propagation 6.: Backtracking Search for CSP 6. is about local search

More information

Database Theory VU , SS Codd s Theorem. Reinhard Pichler

Database Theory VU , SS Codd s Theorem. Reinhard Pichler Database Theory Database Theory VU 181.140, SS 2011 3. Codd s Theorem Reinhard Pichler Institut für Informationssysteme Arbeitsbereich DBAI Technische Universität Wien 29 March, 2011 Pichler 29 March,

More information

Nogood-FC for Solving Partitionable Constraint Satisfaction Problems

Nogood-FC for Solving Partitionable Constraint Satisfaction Problems Nogood-FC for Solving Partitionable Constraint Satisfaction Problems Montserrat Abril, Miguel A. Salido, Federico Barber Dpt. of Information Systems and Computation, Technical University of Valencia Camino

More information

A Game-Theoretic Approach to Constraint Satisfaction

A Game-Theoretic Approach to Constraint Satisfaction A Game-Theoretic Approach to Constraint Satisfaction Phokion G. Kolaitis Computer Science Department University of California, Santa Cruz Santa Cruz, CA 95064 kolaitis@cse.ucsc.edu www.cse.ucsc.edu/ kolaitis

More information

Short and Long Supports for Constraint Propagation

Short and Long Supports for Constraint Propagation Journal of Artificial Intelligence Research 46 (2013) 1 45 Submitted 07/12; published 01/13 Short and Long Supports for Constraint Propagation Peter Nightingale Ian P. Gent Christopher Jefferson Ian Miguel

More information

On Neighborhood Singleton Consistencies

On Neighborhood Singleton Consistencies On Neighborhood Singleton Consistencies Anastasia Paparrizou CRIL-CNRS and Université d Artois Lens, France paparrizou@cril.fr Kostas Stergiou University of Western Macedonia Kozani, Greece kstergiou@uowm.gr

More information

Solving Difficult CSPs with Relational Neighborhood Inverse Consistency

Solving Difficult CSPs with Relational Neighborhood Inverse Consistency Solving Difficult CSPs with Relational Neighborhood Inverse Consistency Robert J. Woodward 1 Shant Karakashian 1 Berthe Y. Choueiry 1 Christian Bessiere 2 1 Constraint Systems Laboratory, University of

More information

Implementation and Evaluation of a Compact-Table Propagator in Gecode

Implementation and Evaluation of a Compact-Table Propagator in Gecode IT 1737 Examensarbete 15 hp Augusti 17 Implementation and Evaluation of a Compact-Table Propagator in Gecode Linnea Ingmar Institutionen för informationsteknologi Department of Information Technology Abstract

More information

Mapping CSP into Many-Valued SAT

Mapping CSP into Many-Valued SAT Mapping CSP into Many-Valued SAT Carlos Ansótegui 1,María Luisa Bonet 2,JordiLevy 3, and Felip Manyà 1 1 Universitat de Lleida (DIEI, UdL) 2 Universitat Politècnica de Catalunya (LSI, UPC) 3 Artificial

More information