Как я могу записать историю решений optaplanner?JAVA

Программисты JAVA общаются здесь
Anonymous
Как я могу записать историю решений optaplanner?

Сообщение Anonymous »


Без дополнительных настроек optaplanner вернет лучшее решение. Но в моем случае мне нужно иметь n лучших решений. Я вижу, что есть SolverEventListener, который мы можем добавить в решатель, а SolverEventListener имеет метод bestSolutionChanged. Мы можем послушать, что там происходит. Однако когда я пытаюсь это сделать, он ловит только две записи истории. Я установил стратегию завершения как лимит в 10 секунд. Однако в журналах отладки я вижу, что он продолжает двигаться после нахождения лучшего решения, и он определенно регистрирует другие лучшие решения с ходами. Но почему прослушиватель событий не улавливает новые решения, которые также дают лучшие результаты?

Кроме того, есть ли какие-нибудь предложения о том, как записать лучшие n решений? Я вижу, что есть еще один хак с BestSolutionRecaller. Есть ли у вас пример использования BestSolutionRecaller? Спасибо!

Я попробовал SolverEventListener, предложенный вики.

Вернуться в «JAVA»