目录
5 Local consistency notions
5.5 Path consistency
- Q: 解说"normalized CSP"和"universal relation"的关系。
A: normalized CSP要求每个二元子序列最多有一个约束(唯一性)。如果我们进一步希望“存在唯一”,那就要形式上引入universal relation进行“占位”。
注:然而universal relation并不是normalized CSP的约束。更进一步的standardized和regular才要求了“存在唯一”约束,即对任意子序列\(X\)存在唯一约束\(C_X\). - Q: 二元关系的transposition和composition让你想到什么对象的运算?
A: 矩阵转置、乘法。
注:考察这里的乘法封闭、有结合律、有幺元(“单位阵”),故你也可以说composition与幺半群相关。 - Q: 如何理解包含关系式\(C_{x,z}\subset C_{x,y}\cdot C_{y,z}\)?其等价于什么样的包含关系式或包含关系式集?
A: 首先,\(x,y,z\)三者构成变量序列的三元子集,即无序,不重复。
所以,\((x,z),(x,y)\)等等都不一定是子序列。如果\(x,y\)是反序的,就用转置运算得到\(C_{x,y}=C_{y,x}^T\),等等。
整个式子要求如果\((a,c)\in C_{x,z}\),则存在\(b\)使得\((a,b)\in C_{x,y},(b,c)\in C_{y,z}\).
当然,这里的\(x,y,z\)记号可以轮换,因为集合\(\{x,y,z\}\)是无序的。所以实际上这一条关系式等价于全排列生成的6条包含关系式。
然而根据对称性,6条关系式又等价于3条。
更进一步的,\(\{x,y,z\}\)如果在CSP变量序列中排序恰好是\(x,y,z\),那么这3条可以显式写成\(C_{x,z}=C_{x,y}\cdot C_{y,z},C_{x,y}=C_{x,z}\cdot C_{y,z}^T,C_{y,z}=C_{x,y}^T\cdot C_{x,z}\). - Q: path consistency和前面的几种consistency的明显区别是什么?
A: 剪枝的是约束不是定义域(或说是二元谓词不是一元谓词,是边不是点)
考察了多个谓词而非一个谓词。 - Q: m-path consistency为什么没有带来新的东西?
A: 如果一个CSP是\((m-1)\)-path consistent,则:
想构造长度为\(m\)的路径。只需先找“倒数第二个点”,使用2-path consistency构造长度为2的路径,再对起点和倒数第二个点使用\((m-1)\)-path consistency构造长度为\(m-1\)的路径。根据归纳法,path consistent蕴涵m-path consistent.
5.6 Directional path consistency
- Q: 简述“重新排序”时怎么考察directional path consistency. 与directional arc consistency比较。
A: 在已经指定好变量序列时,对于\(x,y,z\)是子序列,现如果想要考察一个和原始顺序不同的\(\prec\)(例如\(z\prec y\prec x\))下的directional path consistency,则对\(\prec\)进行讨论,分三种情况处理。
举例\(y,z\prec x\)时,只需考察\(C_{y,z}\subset C_{x,y}^T\cdot C_{x,z}\).
注:可以看到谁在\(\subset\)左边(剪谁)是新的\(\prec\)决定的,但是谁转置谁不转置是旧的顺序决定的。对于\(\prec\),只剪靠前的变量相关的东西(此处是约束),不剪靠后变量相关的,这点和directional arc consistency(剪靠前变量定义域)一致。
注:课本中,对“重新排序”的处理相比directional arc consistency有所不同——在那里是重新构造了CSP \(\mathcal P_\prec\). 当然你想在这两种做法间切换并没有理论上的障碍。
5.7 k-consistency
- Q: instantiation的定义域和CSP的定义域是何关系?
A: instantiation的定义域是CSP变量序列的子序列,而每个分量的值域恰是CSP相应变量的定义域。 - Q: k-consistent和global consistent, node consistent, arc consistent有何联系?
A: global consistent等价于存在一个instantiation是k-consistent,其中k是变量总数。
但global consistent不等价于整个CSP是k-consistent. 比如\(a>0,b>0,a\in\{0\},b\in\{0\}\)显然不存在1-consistent的instantiation,从而vacuously 2-consistent.
注:可以发现\(k-\)consistent和\(l-\)consistent之间互不蕴涵(\(k\ne l\))。直观来看,好像\(k\)越大性质越强,但实际上,由于“空虚的真”现象,这也不一定!
node consistent就是1-consistent.(注:只考虑1元谓词)
已知node consistent,则arc consistent等价于2-consistent. - Q: 已知node consistent,则3-consistent和path consistent有何联系?
A: 只有二元约束时,3-consistent等价于path consistent,否则前者更强,因为后者只考虑二元关系。 - Q: 构造一个global consistent CSP,是1-consistent,3-consistent,但不是2-consistent.
把global consistent改成global inconsistent呢?
A: \(x<y, x<z,x\in \{-1,0,1\},y\in\{0,1\},z\in\{0,1\}\)
\(x=y,y=z,x\in \{0\},y\in\{1\},z\in\{2\}\)
k-CONSISTENCY rule
- Q: 如何用变元多的约束构造变元少的约束?如何用多个变元少的约束构造变元多的约束?
A: projection.
join.(同时满足多个变元少的约束。例如3个变元,满足3条二元约束) - Q: 说出符号\(\bar C_X\)良定义的关键点。\(\bar C_X\)和\(C_X\)联系如何?
A: \(\bar C_X\)是用连续多个join定义的。所以要求运算join可交换。
\(\bar C_X\)比\(C_X\)显然更强。 - Q: 用\(k=2\)为例解释\(k-\)CONSISTENCY规则\(\frac{C_X}{C_X\cap \prod_X(\bar C_{X,y})}\). 问:k-consistency剪的是几元约束?
A: 假设node consistent. 则此时,\(\bar C_{X,y}\)就是二元约束,其投影用来剪\(D_X\)(剪一元约束)。
可以看到和arc consistent剪法相同。
当\(k=1\)剪1元,否则剪\(k-1\)元。 - Q: 为什么k-CONSISTENCY的closed under rule和consistent不等价?它相比arc consistent, node consistent, path consistent等有何本质区别?
A: 其实根源是\(\bar C_{X,y}\)运算。因为\(\bar C_{X,y}\)太强了,包含进了所有子序列的约束。
提示:回忆:arc consistent等价于closed under the corresponding rule. 而node consistent时,arc consistent等价于2-consistent. 可以看到关键在于node consistent.
在\(k=2\),且没有node consistent时,\(\bar C_{X,y}\)太强了,直接包含进了各个一元约束,其投影自然也保留了这些约束。
于是2-consistent相比arc consistent的规则,因为有那些一元约束所以“额外多剪了”一些定义域(或者说“必须更小心才能不被剪”)。这正是不等价的来由:即使某CSP已经2-consistent了,但因为它没有注意有关一元约束的事情,所以仍然被剪了。
对于node consistent,因为没有“真子序列”了,自然就不存在此问题。所以1-consistent仍然是和closed under the rule等价。
5.8 Strong k-consistency
- Q: 已知并非所有定义域都为空,那么strongly k-consistency和global consistency有何关系?
A: 此时前者推出后者。
定义域非空和1-consistent得到一个定义域为单元素集的instantiation(起点非空),之后由于没有vacuously consistent了,因此可以归纳地生成一组定义域为所有变量序列的instantiation. 总之,关键就在于保证每一步非空。
后者不能推出前者(回忆上期提到:local consistency在“剪枝”这一行为上比global consistency苛刻。如果有些定义域有多余的元素,那么global consistency不被破坏但node consistency被破坏)