在更改和交换移动选择器中,我只想考虑涉及冲突实体的移动,因为它们更有可能提高启发式分数。
应该怎么做?我有什么类和接口可以重用/扩展?我查看了ScoreDirector和PhaseLifecycleListener。
答案 0 :(得分:0)
MoveFilter可能会这样做(如果它不同步或解算器缓存,因为它会一直变化)。有关如何使用过滤器的信息,请参阅课程安排示例和文档。
我不会推荐它,因为你仍然希望有时移动非冲突的实体。您可能只想更多地关注那些冲突的讲座。所以我会在混合中保留一个香草移动选择器。
移动过滤器也不完美 - 引导本地搜索功能(尚未提供)是处理此问题的更好方法。
然而,考虑到我所看到的关于模型和类似案例的其他问题,我说移动不是你的问题。一个更好的模型将使所有这些类型的移动调整过时。