0

我正在使用 OptaPlanner 优化类似于 VehicleRoutingExample 的链式规划问题。我的计划实体有一个计划变量,它是另一个计划实体。

现在我正在用 ca 测试一个巨大的数据集。1500 个规划实体。我正在使用 EasyJavaScoreCalculator 来获取 HardSoftScore。分数包括循环计算的几个时间和其他因素。

我的问题是构造启发式(FIRST_FIT 或 FIRST_FIT_DECREASING)需要十多分钟才能初始化解决方案。

我已经减少了约束的数量和用于计算分数的循环数量,但它对运行持续时间没有真正的影响。

有没有办法让 CH 需要更少的时间?(我认为它会比 LocalSearch 花费更少的时间,但事实并非如此......)

4

1 回答 1

0

EasyJavaScoreCalculator速度非常慢,并且不会扩展到超过 100 个实体。请改用 IncremantalJavaScoreCalculator 或 Drools 计算器。要亲自了解差异,请以 VRP 为例并在 3 种实现(easy、inc 和 drools)之间切换。

另请参阅有关增量分数计算的文档部分,以解释为什么要快得多。

于 2014-09-24T13:21:32.210 回答