当前位置: 首页 > 知识库问答 >
问题:

OptaPlanner:评估解决方案

程胡非
2023-03-14

共有1个答案

郜彬
2023-03-14

通过实现org.kie.api.event.rule.AgendaEventListener并将其与Kiesession.addeventListener(AgendaEventListener监听器)附加在一起,可以观察规则的触发。

规则引擎没有配备来解释为什么某些规则没有被激发。

这取决于你所拥有的规则的复杂性,但一种方法是编写规则,分别评估约束并积累一个“满足集”,然后确定“所有满足集”,一个不完全集的补充就是你问题的答案。

另一种方法是在模式或约束中的一个不被满足时设置触发规则。例如,除了

rule abc when A() B() C() then ... end

你得写

rule not_a when not A() then ... end
rule a_not_B when A() not B() then ... end
rule ab_not_c when A() B() not C() then ... end 
 类似资料:
  • 本文向大家介绍SQL Server评估期已过问题的解决方法,包括了SQL Server评估期已过问题的解决方法的使用技巧和注意事项,需要的朋友参考一下 但是,当自己打开之前敲的系统时,总是报错,无法进行。经过检查发现,原来是自己的数据库出现了问题,无法连接到数据库了。打开Sql Server2008,总是报这样的错误提示:                      问题出现了,就得解决,于是开始上

  • 我正在尝试解决类似于员工名册的问题。我面临的问题是,每次我运行求解器时,它都会生成不同的任务。这使得更难调试为什么选择特定案例而不是另一个案例。为什么会这样? 附注:我的任务有许多硬性限制,可能无法全部满足(大多数情况下,我仍然看到一些负面的硬性评分)。所以我的终止策略是基于< code > unimprovedSecondsSpentLimit 。会不会是这个原因?

  • 我有以下CVRPTW问题,我正在尝试使用OptaPlanner找到一个好的解决方案。时间为hh: mm: ss格式。 我的DRL文件是这样的。此外,我还定义了一个与准备时间之前到达相关的硬约束。我的解算器配置如下,但终止标记不同: 这是问题陈述: 我有2辆车,容量为10件物品和1个仓库。 这是解决方案(客户按车辆分组,按到达时间排序): (D=需求,Ar.T=到达时间,上一个D=与上一个位置的距离

  • 本文向大家介绍SQL Server 2008 评估期已过怎么解决,包括了SQL Server 2008 评估期已过怎么解决的使用技巧和注意事项,需要的朋友参考一下 SQL Server 2008有180天的试用期,过期后会提示“评估期已过”的提示。 1、进入SQL Server安装中心: 2、选择“维护”-“版本升级” 3、输入密钥: 其他的根据提示操作。 附SQL Server序列号: 开发版:

  • 问题内容: 我正在尝试以下代码,该代码向RDD中的每一行添加一个数字,并使用PySpark返回RDD列表。 输入文件(sample.txt)中的内容为: 我期待这样的输出(将rdd中的数字分别添加0、1、2): 而实际输出是: 这意味着无论 范围(4) 为何,该理解仅将值3用于变量i 。 为什么会发生这种现象? 问题答案: 它的发生是由于Python的后期绑定,而不是特定于(Py)Spark的。将