Optaplanner Easy vs 增量分数计算速度
Optaplanner Easy vs Incremental Score Calculation Speed
我首先编写了一个简单的分数计算器,同时开始使用 Optaplanner 根据需要添加硬约束和软约束。完成该工作后,我将其转换为增量分数计算器 运行 许多测试并使用内置 FULL_ASSERT 环境以确保它按预期工作并产生与简易分数计算器相同的分数。然后我关闭 FULL_ASSERT 并将日志记录更改为仅信息,运行 求解器首先使用增量计算器,然后使用简易计算器。
在日志中,我看到 'score calculation speed' 但我无法在文档中找到更高的数字是更好还是更差,或者是否可以用这种方式比较 2 个评分计算器。这让我感到困惑,因为在我看来,每秒的数字越高越好,但如果是这样的话,那么我的增量计算器比简单的计算器慢得多。
有谁知道以下两个中哪个更好,或者甚至不应该这样比较它们?:
- 增量:分数计算速度(1513/秒)
- 简单:分数计算速度(3221/秒)
查看代码,我可以看到每次调用 setCalculatedScore 时计算计数(该数字基于此)都会增加,但是,这可能只是意味着增量分数计算器不必将其设置为通常,不知道它是如何工作的。
谢谢
分数越高计算速度越好
注意:
- 转动 FAST_ASSERT 或 FULL_ASSERT 会大大减慢它的速度。也许您忘记为增量基准 运行.
关闭它
- 您可以通过添加包含简单元素的
<assertionScoreDirectorFactory>
元素来更好地验证增量元素。请参阅文档。
我首先编写了一个简单的分数计算器,同时开始使用 Optaplanner 根据需要添加硬约束和软约束。完成该工作后,我将其转换为增量分数计算器 运行 许多测试并使用内置 FULL_ASSERT 环境以确保它按预期工作并产生与简易分数计算器相同的分数。然后我关闭 FULL_ASSERT 并将日志记录更改为仅信息,运行 求解器首先使用增量计算器,然后使用简易计算器。
在日志中,我看到 'score calculation speed' 但我无法在文档中找到更高的数字是更好还是更差,或者是否可以用这种方式比较 2 个评分计算器。这让我感到困惑,因为在我看来,每秒的数字越高越好,但如果是这样的话,那么我的增量计算器比简单的计算器慢得多。
有谁知道以下两个中哪个更好,或者甚至不应该这样比较它们?:
- 增量:分数计算速度(1513/秒)
- 简单:分数计算速度(3221/秒)
查看代码,我可以看到每次调用 setCalculatedScore 时计算计数(该数字基于此)都会增加,但是,这可能只是意味着增量分数计算器不必将其设置为通常,不知道它是如何工作的。
谢谢
分数越高计算速度越好
注意:
- 转动 FAST_ASSERT 或 FULL_ASSERT 会大大减慢它的速度。也许您忘记为增量基准 运行. 关闭它
- 您可以通过添加包含简单元素的
<assertionScoreDirectorFactory>
元素来更好地验证增量元素。请参阅文档。