约束推理中的搜索优化技术
1. 引言
在约束推理中,为了更高效地找到约束满足问题(CSP)的解,人们提出了许多技术。这些技术涵盖了从处理失败解释到搜索策略优化等多个方面。本文将详细介绍这些技术,包括懒子句生成、前瞻技术、变量和值排序启发式以及其他改进搜索的方法。
2. 懒子句生成
Nogoods 已被推广为比简单赋值更具表现力的失败解释,并且 SAT 中的技术已用于处理这些 Nogoods。Ohrimenko 等人在 2009 年引入了懒子句生成技术。在该技术中,每次通过约束传播减少域时,代表值移除解释的子句的布尔变量会动态生成。这种懒生成方式可防止求解器创建包含大量无用变量的庞大公式。
例如,对于约束 $x + y = z$,其中 $x, y \in {0..5}$ 且 $z \in {0..20}$,通过约束传播,$z$ 的域会减少到 ${0..10}$,并将子句 $\neg \langle x \leq 5 \rangle \vee \neg \langle y \leq 5 \rangle \vee \langle z \leq 10 \rangle$ 添加到处理解释的 SAT 公式中。$\langle x \leq 5 \rangle$、$\langle y \leq 5 \rangle$ 和 $\langle z \leq 10 \rangle$ 是在首次出现在解释中时动态创建的布尔变量。Siala 在 2015 年将懒子句生成应用于全局约束。
3. 前瞻技术
前瞻技术在回溯(BT)搜索树的每个节点应用约束传播。其动机是在搜索树顶部检测到不一致比在树底部多次检测到不一致更有效。与 BT 一起使用的传播
超级会员免费看
订阅专栏 解锁全文
632

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



