optaplanner是否有办法将上一个最佳解决方案继续到下一个计算

optaplanner是否有办法将上一个最佳解决方案继续到下一个计算,optaplanner,Optaplanner,我正在使用optaplanner 8.4.1和约束流API optaplanner是否有方法根据简单约束输出问题的最佳解决方案,然后将解决方案输入复杂约束以找到最佳解决方案?这能加快找到最佳解决方案的时间吗 约束过于复杂和缓慢,尤其是在使用groupby和toList方法时。我目前的逻辑涉及对连续子串的判断 例如:有10个位置和10个带序列号的球。球的颜色可以是白色、黑色或红色。此时,你需要将10个球排成10个位置。要求白色球必须堆放在一起。白色球的范围为4到6;这里的位置是规划实体,球是规划变

我正在使用optaplanner 8.4.1和约束流API

optaplanner是否有方法根据简单约束输出问题的最佳解决方案,然后将解决方案输入复杂约束以找到最佳解决方案?这能加快找到最佳解决方案的时间吗

约束过于复杂和缓慢,尤其是在使用groupby和toList方法时。我目前的逻辑涉及对连续子串的判断


例如:有10个位置和10个带序列号的球。球的颜色可以是白色、黑色或红色。此时,你需要将10个球排成10个位置。要求白色球必须堆放在一起。白色球的范围为4到6;这里的位置是规划实体,球是规划变量。这里我们需要计算有多少个连续的白球。约束流目前仅支持4个基,因此只能以groupBy和toList的形式进行判断

您当前不能作为单个解算器进行判断,但您应该能够通过依次运行2个解算器(使用不同的
解算器配置
)来进行判断。例如,您可以使用带有硬约束的
BasicConstraintProvider
,以及扩展基本约束并添加软约束的
FullConstraintProvider

也就是说,我首先要投入时间来提高分数计算速度(请参阅信息日志或基准报告),以避免所有这些变通方法。这个数字应该在10000以上


而且,
FIRST\u-FIT
可能很有趣。

。也就是说,你介意详细说明你所说的“自己判断结果”是什么意思吗?toList()实际上只应在所有其他方法都失败时作为最后手段使用,我怀疑您试图完成的事情本质上是缓慢的。我的约束太复杂了。我想得到解决方案的数据来控制运动。Groupby和tolist太慢了。他们会给我很多空数据和重复数据。我不需要这些数据