Programming finite-domain constraint propagators in action rules

被引:13
|
作者
Zhou, Neng-Fa [1 ]
机构
[1] CUNY Brooklyn Coll, Dept Comp & Informat Sci, Brooklyn, NY 11210 USA
[2] CUNY, Grad Ctr, New York, NY USA
关键词
constraint programming; constraint propagation; action rules;
D O I
10.1017/S1471068405002590
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In this paper, we propose a new language, called AR (Action Rules), and describe how various propagators for finite-domain constraints can be implemented in it. An action rule specifies a pattern for agents, an action that the agents can carry out, and an event pattern for events that can activate the agents. AR combines the goal-oriented execution model of logic programming with the event-driven execution model. This hybrid execution model facilitates programming constraint propagators. A propagator for a constraint is an agent that maintains the consistency of the constraint and is activated by the updates of the domain variables in the constraint. AR has a much stronger descriptive power than indexicals, the language widely used in the current finite-domain constraint systems, and is flexible for implementing not only interval-consistency but also arc-consistency algorithms. As examples, we present a weak arc-consistency propagator for the all-distinct constraint and a hybrid algorithm for n-ary linear equality constraints. B-Prolog has been extended to accommodate action rules. Benchmarking shows that B-Prolog as a CLP(FD) system significantly outperforms other CLP(FD) systems.
引用
收藏
页码:483 / 507
页数:25
相关论文
共 50 条