【发布时间】:2013-06-25 17:31:20
【问题描述】:
我在理解 Drools 规则时遇到问题,这些规则在 OptaPlanner 演示示例之一(NurseRostering 应用程序)中实现。谁能解释以下规则的工作原理:
// a nurse can only work one shift per day, i.e. no two shift can be assigned to the same nurse on a day.
rule "oneShiftPerDay"
when
$leftAssignment : ShiftAssignment($leftId : id, $employee : employee, $shiftDate : shiftDate)
$rightAssignment : ShiftAssignment(employee == $employee, shiftDate == $shiftDate, id > $leftId)
then
insertLogical(new IntConstraintOccurrence("oneShiftPerDay", ConstraintType.NEGATIVE_HARD,
1,
$leftAssignment, $rightAssignment));
end
是否有任何资源详细说明了规则的解释及其实施方式?当我在网上和一些书籍中查看一些示例时,我发现它很容易理解,但是当我查看 Drools 中提供的示例时,我无法理解。
【问题讨论】:
标签: drools rules optaplanner