Interface SolverEventListener<Solution_>
- Type Parameters:
Solution_- the solution type, the class with thePlanningSolutionannotation
- All Superinterfaces:
EventListener
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
-
Method Summary
Modifier and TypeMethodDescriptionvoidbestSolutionChanged(@NonNull BestSolutionChangedEvent<Solution_> event) Called once every time when a betterPlanningSolutionis found.
-
Method Details
-
bestSolutionChanged
Called once every time when a betterPlanningSolutionis found. ThePlanningSolutionis guaranteed to be initialized. Early in the solving process it's usually called more frequently than later on.Called from the solver thread. Should return fast, because it steals time from the
Solver.In real-time planning If
Solver.addProblemChange(ProblemChange)has been called once or more, allProblemChanges in the queue will be processed and this method is called only once. In that case, the former bestPlanningSolutionis considered stale, so it doesn't matter whether the newScoreis better than that or not.
-