我正在使用Optaplanner 6.1.0开发一个求解器,类似于车辆路线问题。当我在700名安装人员和200个预订上运行我的求解器时,它将成功地解决规划问题。但是,当我使用更大的数据集(700名安装人员和1220个预订)时,我得到了
原因:java.lang.IllegalStateException:本地搜索阶段以未初始化的解决方案开始。首先初始化解决方案。例如,首先运行构造启发式阶段
但就在异常之前,
16:10:40378信息[DefaultConstructionHeuristic phase][http-listener-1(4)]构造启发阶段(0)结束:步骤总数(194),花费的时间(30693),最佳分数(-1硬/-688803soft)。
我正在使用<constructionHeuristicType>FIRST_FIT_DECREASING</constructionHeuristicType>
在我的配置中。
我用错了吗?
也许计划变量的值范围为空。特别是对于来自实体的值范围提供者,这种情况更有可能发生。请随意提交一份jira,在这种情况下,错误消息应该会有所改进。
诊断待办事项:注释掉局部求解器阶段,运行求解器(因此它只执行构造启发式),然后遍历规划实体并打印出每个规划值的值。检查那里是否有null。
事实上,你的CH中有194步,而不是200步,这表明了这一点。(如果其他6个规划实体是不可移动的,这不会触发此异常(更多信息),所以这不是问题所在。)