Interface MoveSelectorFactory<Solution_>
- All Known Implementing Classes:
AbstractMoveSelectorFactory,CartesianProductMoveSelectorFactory,ChangeMoveSelectorFactory,KOptListMoveSelectorFactory,KOptMoveSelectorFactory,ListChangeMoveSelectorFactory,ListRuinRecreateMoveSelectorFactory,ListSwapMoveSelectorFactory,MoveIteratorFactoryFactory,MoveListFactoryFactory,PillarChangeMoveSelectorFactory,PillarSwapMoveSelectorFactory,RuinRecreateMoveSelectorFactory,SubChainChangeMoveSelectorFactory,SubChainSwapMoveSelectorFactory,SubListChangeMoveSelectorFactory,SubListSwapMoveSelectorFactory,SwapMoveSelectorFactory,TailChainSwapMoveSelectorFactory,UnionMoveSelectorFactory
public interface MoveSelectorFactory<Solution_>
-
Method Summary
Modifier and TypeMethodDescriptionbuildMoveSelector(HeuristicConfigPolicy<Solution_> configPolicy, SelectionCacheType minimumCacheType, SelectionOrder inheritedSelectionOrder, boolean skipNonDoableMoves) BuildsMoveSelectorfrom theMoveSelectorConfigand provided parameters.static <Solution_>
AbstractMoveSelectorFactory<Solution_,?> create(MoveSelectorConfig<?> moveSelectorConfig)
-
Method Details
-
create
static <Solution_> AbstractMoveSelectorFactory<Solution_,?> create(MoveSelectorConfig<?> moveSelectorConfig) -
buildMoveSelector
MoveSelector<Solution_> buildMoveSelector(HeuristicConfigPolicy<Solution_> configPolicy, SelectionCacheType minimumCacheType, SelectionOrder inheritedSelectionOrder, boolean skipNonDoableMoves) BuildsMoveSelectorfrom theMoveSelectorConfigand provided parameters.- Parameters:
configPolicy- never nullminimumCacheType- never null, If caching is used (different fromSelectionCacheType.JUST_IN_TIME), then it should be at least thisSelectionCacheTypebecause an ancestor already uses such caching and less would be pointless.inheritedSelectionOrder- never nullskipNonDoableMoves-- Returns:
- never null
-