Download presentation

Presentation is loading. Please wait.

Published byAngelina O'Donnell Modified over 2 years ago

1

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

30

31

32

33

34

35

36

37
complexities

38

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

41

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google