我有一个有向无环图,弧是实体,每个弧关联的权重是规划变量。我使用:
@ValueRangeProvider(id = "bufferRange")
public CountableValueRange<Integer> getDelayRange() {
return ValueRangeFactory.createIntValueRange(1, 1000);
}
为我的变量赋值。另外,我也遇到过这个问题:
Exhaustive Search in OptaPlanner does not work on very simple example ,现在通过设置 int
中的变量来解决这个问题至Integer
并检查null
分数计算中的值。
现在的问题是,求解器在赋值时似乎没有回溯。我使用打印来检查归因于每个弧的值。在求解过程开始时,我可以看到值被设置为不同的弧。但经过一段时间的归因后,求解器仍停留在将值分配给同一条弧上。检查打印结果,我看到属性从 1 变为 1000,然后又重新开始。既然域中的所有值都经过一次测试,为什么求解器不回溯而不是再次分配相同的值?
我测试了所有 <nodeExplorationType>
选项并创建了一个类来使用 <entitySorterManner>
具有相同的结果。
提前致谢。
最佳答案
我想你是对的Geoffrey ,停用日志并让程序运行近 48 小时,然后得出答案。日志的打印方式会误导分析。只是为了说明,如果记录器被停用,性能会相当优越。
关于java - Branch And Bound 在 OptaPlanner 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36783644/