We build on a recently proposed method for stepwise explaining solutions of Constraint Satisfaction Problems (CSP) in a human-understandable way. An explanation here is a sequence of simple inference steps where simplicity is quantified using a cost function. The algorithms for explanation generation rely on extracting Minimal Unsatisfiable Subsets (MUS) of a derived unsatisfiable formula, exploiting a one-to-one correspondence between so-called non-redundant explanations and MUSs. However, MUS extraction algorithms do not provide any guarantee of subset minimality or optimality with respect to a given cost function. Therefore, we build on these formal foundations and tackle the main points of improvement, namely how to generate explanations efficiently that are provably optimal (with respect to the given cost metric). For that, we developed (1) a hitting set-based algorithm for finding the optimal constrained unsatisfiable subsets; (2) a method for re-using relevant information over multiple algorithm calls; and (3) methods exploiting domain-specific information to speed up the explanation sequence generation. We experimentally validated our algorithms on a large number of CSP problems. We found that our algorithms outperform the MUS approach in terms of explanation quality and computational time (on average up to 56 % faster than a standard MUS approach).
翻译:我们在最近提出的CSP解释方法上进行了改进,该方法以人类可理解的方式逐步解释解决方案。在这里,解释是一个简单推理步骤的序列,其中简单性以成本函数量化。解释生成算法依赖于从派生的不可满足公式中提取最小不可满足子集(MUS),利用所谓的非冗余解释和MUS之间的一对一对应关系。然而,MUS提取算法不能保证子集的最小性或相对于给定成本函数的最优性。因此,我们基于这些形式基础,并解决了改进的主要问题,即如何高效生成证明最优的解释(相对于给定的成本度量)。为此,我们开发了(1)一种基于敲击集的算法,用于查找最优的约束不可满足子集;(2)一种重复使用相关信息的方法,可在多个算法调用上提高速度;以及(3)利用特定领域的信息来加速解释序列生成的方法。我们在大量CSP问题上实验验证了我们的算法。我们发现,在解释质量和计算时间(平均比标准MUS方法快56%)方面,我们的算法优于MUS方法。