Interface LocalSearchForager<Solution_>

All Superinterfaces:
EventListener, LocalSearchPhaseLifecycleListener<Solution_>, SolverLifecycleListener<Solution_>
All Known Implementing Classes:
AbstractLocalSearchForager, AcceptedLocalSearchForager

public interface LocalSearchForager<Solution_> extends LocalSearchPhaseLifecycleListener<Solution_>
Collects the moves and picks the next step from those for the LocalSearchDecider.
See Also:
  • Method Details

    • supportsNeverEndingMoveSelector

      boolean supportsNeverEndingMoveSelector()
      Returns:
      true if it can be combined with a Selector.isNeverEnding() that returns true.
    • addMove

      void addMove(LocalSearchMoveScope<Solution_> moveScope)
      Parameters:
      moveScope - never null
    • isQuitEarly

      boolean isQuitEarly()
      Returns:
      true if no further moves should be selected (and evaluated) for this step.
    • pickMove

      Parameters:
      stepScope - never null
      Returns:
      sometimes null, for example if no move is selected