0

编辑:这个问题适用于了解或工具,特别是路由库的人:

我想增加对路由库的了解。我已阅读 or-tools 手册。我想将决策生成器传递给求解器。决策构建者应决定如何进行 nextVar 分配。

这是我的尝试:

爪哇:

indexDepot = 0;
numberStops = 100;
numberVehicles = 8;
indexManager = new RoutingIndexManager(numberStops, numberVehicles, indexDepot);
RoutingModelParameters modelParameters = parameters.getRoutingModelParameters();
model = new RoutingModel(indexManager, modelParameters);
Solver cpsolver = model.solver();

IntVar[] nextVars = new IntVar[numberStops];
for (int i=1; i<numberStops; i++) {
    nextVars[i] = model.nextVar(i);
}
DecisionBuilder db = cpsolver.makePhase(nextVars, cpsolver.CHOOSE_RANDOM, cpsolver.ASSIGN_RANDOM_VALUE);
cpsolver.newSearch(db);

似乎cpsolver.newSearch(db);没有任何效果。如何正确地将决策构建器传递给路由模型?

以下是有关搜索原语的手册部分:

https://acrogenesis.com/or-tools/documentation/user_manual/manual/search_primitives/out_of_the_box_search_primitives.html

4

0 回答 0