Download presentation
Presentation is loading. Please wait.
Published byAngelina O'Donnell Modified over 10 years ago
2
Levels of Consistency
3
Node Consistency (NC) Arc-consistency (AC) Path Consistency (PC) Generalised arc-consistency (GAC) Bounds consistency Inverse Path Consistency (IPC aka PIC) Singleton Arc-consistency (SAC) … and others
4
Node Consistency
5
Node Consistency (NC) aka 1-consistency Example:
6
Arc-consistency
7
A constraint Cij is arc consistent if for every value x in Di there exists a value y in Dj that supports x i.e. if v[i] = x and v[j] = y then Cij holds note: we are assuming Cij is a binary constraint A csp (V,D.C) is arc consistent if every constraint is arc consistent Arc-consistency (AC) aka 2-consistency
8
Arc-consistency AC appears to be the best level of consistency to maintain (MAC) There is no proof of this However, there is a body of evidence For non-trivial problems MAC beats FC beats BT
9
Path Consistency
10
Path-consistency (aka 3-consistency) Vi Vj Vk There might be no constraint Cik Therefore 3-consistency may create it! It may create nogood tuples {(i/x,k/z),…} Therefore increases size of model/problem. May result in more constraints to check! M. Singh, TAI-95
11
Path-consistency (aka 3-consistency) for x in Di do for z in Dk do supported := false for y in Dj while ¬supported do supported := Cij(x,y) & Cik(x,z) & Cjk(y,z) if ¬supported then post(¬Cik(x,z))
12
See AR33 notes section 7.3
13
k-consistency
14
Also k-consistencyAR33 section 7.4
15
Generalised arc-consistency
16
Generalised arc-consistency (GAC)AR33 section 7.5
17
Generalised arc-consistency (GAC)AR33 section 7.5
18
Generalised arc-consistency (GAC) GAC is meaningful only wrt n-ary constraints (in a sense) From Gent, Miguel & Nightingale
19
Generalised arc-consistency (GAC)Alan Frisch (York)
20
Generalised arc-consistency (GAC)Alan Frisch (York)
21
Bounds Consistency
22
Alan Frisch (York)
23
Bounds ConsistencyAlan Frisch (York)
24
Inverse Path Consistency (aka Path Inverse Consistency)
25
Path Inverse Consistency (PIC aka IPC)Debruyne & Bessiere Note: similar to PC but deletes values rather than adds tuples!
26
Path Inverse Consistency (PIC aka IPC)Debruyne & Bessiere Note: similar to PC but deletes values rather than adds tuples! for x in Di do supported := false for y in Dj while ¬supported do for z in Dk while ¬supported do supported := Cij(x,y) & Cik(x,z) & Cjk(y,z) if ¬supported then Di := Di \ {x}
27
Singleton arc-consistency
28
Singleton arc-consistency (SAC) i.e. we can take any variable, assign it a value from its domain and then make the problem arc-consistent and all variables have non-empty domains
29
The basic and least efficient algorithm for SAC (from Bartaks FLAIRS04 paper) The SAC1 algorithm
37
complexities
39
General notes we can have inverse consistency for any k we can have neighbourhood inverse consistency we can have singleton k-consistency In our model and CP toolkit we may have mixed consistency some variables/constraints only forward checked some variables in binary constraints AC some variable in n-ary constraints GAC variables NC This is not a problem, so long as we are sure that when we instantiate a variable it is consistent With respect to the past variables We can also maintain these levels of consistency during search
40
Conclusion There are MANY different levels of consistency This is an ACTIVE area of research
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.