java - Branch And Bound 在 OptaPlanner 中不起作用

标签 java optaplanner directed-acyclic-graphs branch-and-bound

我有一个有向无环图,弧是实体,每个弧关联的权重是规划变量。我使用:

@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/

相关文章:

benchmarking - 使用 Optaplanner 对实时规划算法进行基准测试

python - 仅当在 python 中使用 DAG 的 AWS athena 表中有新分区/数据可用时,如何触发 Airflow 任务?

data-structures - DAG是否有支持有效编辑的数据结构?

json - 用 JSON 表示图形

java - 有没有更简单的方法来编写这个 Java GUI 窗口代码?

java - 编写 Java 代码需要域名吗?

java jsp返回对象的地址

java - 需要从我的应用程序进行非阻塞/异步方法调用

使用 optaplanner 和 drools 的 Grails 依赖项

java - 光规划器 : Planning entity and Planning variable at the same time?