摘要翻译:
当为约束实现传播器时,必须决定变量:当实现min时,是否也应该实现max?一个人应该实现有系数和无系数的线性方程组吗?约束变体无处不在:实现它们需要相当大的(如果不是禁止性的)努力,并降低可维护性,但将提供更好的性能。本文展示了如何使用前面为实现架构介绍的变量视图来派生完美的传播器变体。介绍了视图和派生传播子的模型。证明了导出的传播子确实是完美的,因为它们继承了诸如正确性、域和界的一致性等基本性质。用于系统地导出传播子的技术,如变换、泛化、专门化和信道化,被开发用于几个可变领域。我们评估了衍生传播子的巨大影响。如果没有派生传播程序,Gecode将需要140000行而不是40000行的传播程序代码。
---
英文标题:
《Perfect Derived Propagators》
---
作者:
Christian Schulte and Guido Tack
---
最新提交年份:
2008
---
分类信息:
一级分类:Computer Science 计算机科学
二级分类:Artificial Intelligence
人工智能
分类描述:Covers all areas of AI except Vision, Robotics, Machine Learning, Multiagent Systems, and Computation and Language (Natural Language Processing), which have separate subject areas. In particular, includes Expert Systems, Theorem Proving (although this may overlap with Logic in Computer Science), Knowledge Representation, Planning, and Uncertainty in AI. Roughly includes material in ACM Subject Classes I.2.0, I.2.1, I.2.3, I.2.4, I.2.8, and I.2.11.
涵盖了人工智能的所有领域,除了视觉、机器人、机器学习、多智能体系统以及计算和语言(自然语言处理),这些领域有独立的学科领域。特别地,包括专家系统,定理证明(尽管这可能与计算机科学中的逻辑重叠),知识表示,规划,和人工智能中的不确定性。大致包括ACM学科类I.2.0、I.2.1、I.2.3、I.2.4、I.2.8和I.2.11中的材料。
--
---
英文摘要:
When implementing a propagator for a constraint, one must decide about variants: When implementing min, should one also implement max? Should one implement linear equations both with and without coefficients? Constraint variants are ubiquitous: implementing them requires considerable (if not prohibitive) effort and decreases maintainability, but will deliver better performance. This paper shows how to use variable views, previously introduced for an implementation architecture, to derive perfect propagator variants. A model for views and derived propagators is introduced. Derived propagators are proved to be indeed perfect in that they inherit essential properties such as correctness and domain and bounds consistency. Techniques for systematically deriving propagators such as transformation, generalization, specialization, and channeling are developed for several variable domains. We evaluate the massive impact of derived propagators. Without derived propagators, Gecode would require 140000 rather than 40000 lines of code for propagators.
---
PDF链接:
https://arxiv.org/pdf/0806.1806