有没有办法使用 Drools 进行实体加权?

Is there a way to use Drools for Entity weighting?

我正在使用 Optaplanner 进行活动策划(~courseschedule 示例)。 Optaplanner 需要权重 comparator/factory 来对课程进行加权,但是某些属性可能更容易通过 Drools insertLogical 表达式来表达。

例如:如果有很多票来参观,课程就更难计划。 那就是我有 Votes 作为事实。

当然我可以重新排列投票并将它们分配给 Course 实体,但是 "extra computed elsewhere properties on my entity" 似乎很尴尬,而且通过 [= 表达某些计算似乎更容易13=].

这是 Optaplanner 中缺少的东西吗?是故意省略的吗?

这可能是一个很好的 jira,也支持 DRL 进行实体难度比较。 但是,它不能是 scoreDrl 的一部分,因为它应该是一个单独的 kie 会话。难度比较在开始时运行一次(未来我们可能会在每一步都支持 运行 它)。另一方面,分数计算 DRL 在每一步都运行。

就我个人而言,我认为这可能有点矫枉过正,因为 weightFactory 的用途非常广泛。创建一个 jira 并尝试尽可能地用示例来说明用例,以改变我们的想法。