有值约束满足问题:理论、求解与应用
1. 全局成本函数
约束编程的部分成功源于引入了所谓的“全局约束”。全局约束是具有受限语义的约束,可用于定义比通用算法(阶数为指数时间)更高效的约束传播算法。对于某些成本函数,如果能比一般情况更高效地确定其最小值,也能实现类似效果,在这些情况下已提出了高效的边界一致性算法。
一个著名的全局约束示例是“AllDiff”约束,它要求一组变量取不同的值。该约束的语义允许基于匹配理论的高效传播算法。
虽然已经提出了各种依赖于引入额外成本变量的软“全局约束”,但直到最近才展示了如何在类似于AllDiff的全局成本函数上实现成本传播。这一结果为将现有的硬全局约束列表转移到有值约束满足问题(VCSP)铺平了道路。具体而言,对于可分解为有界阶数成本函数的组织良好网络的全局成本函数,已经实现了这一目标。
另一种方法是将整数规划中的割生成技术转移到VCSP,如在团全局约束中。
2. 复杂度和可处理类
VCSP的复杂度取决于其估值结构。每个估值结构都包含一个幂等估值⊥(表示完全满足,因此成本为零)和一个吸收估值⊤≠⊥(对应于完全不满足,因此是禁止的赋值)。由于总是可以通过估值⊥和⊤对所有约束满足问题(CSP)实例进行编码,因此对于任何估值结构,VCSP都是NP难的。
然而,对于VCSP的某些子问题和某些估值结构,存在多项式时间算法。如果聚合运算符是幂等的(如在模糊和可能性CSP中),则VCSP复杂度的研究可简化为CSP复杂度的研究,因为解决VCSP归结为解决割问题,即通过将每个成本函数fP替换为关系:
[R_{\alpha}^P = {t \in l(P) : f_P(t)
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



