5 Local consistency notions

5.1 Node consistency

  1. Q: 为什么本章以考察Node consistency为起点?
    A: 其考察一元谓词,一个谓词。最简单。
  2. Q: Node consistency对应的传播过程有什么效果?
    A: 缩减某些变元的定义域。(实际上,一元约束跟定义域的含义几乎没有区别)
  3. Q: 如何理解vacuously consistent?
    A: 没有一元谓词,自然就不违反node consistency了。
    假命题蕴涵一切命题(空虚的真)。
    这没有提供任何有意义的信息。

5.2 Arc consistency

  1. Q: 考察二元约束\(C(x,y)\),形式化表示\(C\)何时是arc consistent.
    A: \(\forall x\in D_x \exists y\in D_y,s.t. (x,y)\in C\)
    \(\forall y\in D_y\exists x\in D_x,s.t. (x,y)\in C\)
  2. Q: 为什么arc consistency和global consistency互不蕴涵?深入考察"local"的文字含义与上述事实的关联。
    A:
    举例:3皇后问题。或举例:\(x=y,x\ne y,x\in\{0,1\},y\in\{0,1\}\). 是arc consistent但不global consistent.(前者重点在变量的local,后者重点在约束的local)
    解释:"local"只表示各个局部满足(变量或约束的局部),总体不一定满足。各个局部的满足可能是不同的集合保证的,各集合间没有交集。
    如果定义域中出现多余的元素,即\(x=y,x\in\{0\},y\in\{0,1\}\)则global consistent不arc consistent.
    解释:node consistent和arc consistent实际上都有利用consistent进行“剪枝”的意味,即利用"local"的考察,分类讨论判断一些具体的取值可不可行。
    从根本上讲,"local"一词,实际上就包含了分类讨论之意,即分开看各个局部的情况,使得好的在集合中,坏的不在集合中。反之,"global"并未作此局部性的考察,所以可能不具有“最优”性质,没有剪过枝(好的在集合中,多余了一些坏的也在集合中)。
  3. Q: 当所有约束都是()元的且所有变量定义域()时,arc consistency显然蕴涵()。
    A: 2,都是单元素集,global consistency

5.3 Hyper-arc consistency

  1. Q: 如何理解迄今三种consistency的名称?
    A: 把变量看作点,约束看作超边,整个系统看作(无序)超图。
    当然,下一节就对应有向图了。之后还有有序超图。

5.4 Directional arc consistency

  1. Q: 本节的directional arc consistency如果针对\(\prec\)关系考察,那么相比arc consistency,可能少剪枝哪些部分?
    A: 对于\(a\prec b\)\(D_b\)没有被剪。只剪了靠前的变量。
  2. Q: 回忆在定义CSP时是在变量序列上定义的。那么如果想用directional arc consistency剪最后一个变量的定义域该怎么办呢?
    A: 对于CSP \(\mathcal P\),直接在其变量序列上定义另一个序\(\prec\),并依据此序构造一系列谓词,并得到新的CSP \(P_\prec\),再对\(P_\prec\)应用directional arc consistency.