Class SwapMoveSelectorFactory<Solution_>
java.lang.Object
org.optaplanner.core.impl.AbstractFromConfigFactory<Solution_,SelectorConfig_>
org.optaplanner.core.impl.heuristic.selector.AbstractSelectorFactory<Solution_,MoveSelectorConfig_>
org.optaplanner.core.impl.heuristic.selector.move.AbstractMoveSelectorFactory<Solution_,SwapMoveSelectorConfig>
org.optaplanner.core.impl.heuristic.selector.move.generic.SwapMoveSelectorFactory<Solution_>
- All Implemented Interfaces:
MoveSelectorFactory<Solution_>
public class SwapMoveSelectorFactory<Solution_>
extends AbstractMoveSelectorFactory<Solution_,SwapMoveSelectorConfig>
-
Field Summary
Fields inherited from class org.optaplanner.core.impl.AbstractFromConfigFactory
config
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected MoveSelector<Solution_>
buildBaseMoveSelector
(HeuristicConfigPolicy<Solution_> configPolicy, SelectionCacheType minimumCacheType, boolean randomSelection) Builds a baseMoveSelector
without any advanced capabilities (filtering, sorting, ...).protected MoveSelectorConfig<?>
buildUnfoldedMoveSelectorConfig
(Collection<EntityDescriptor<Solution_>> entityDescriptors) protected MoveSelectorConfig<?>
buildUnfoldedMoveSelectorConfig
(HeuristicConfigPolicy<Solution_> configPolicy) To provide unfolded MoveSelectorConfig, override this method in a subclass.Methods inherited from class org.optaplanner.core.impl.heuristic.selector.move.AbstractMoveSelectorFactory
applySorting, buildMoveSelector, checkUnfolded, determineBaseRandomSelection, isBaseInherentlyCached, validateSorting
Methods inherited from class org.optaplanner.core.impl.heuristic.selector.AbstractSelectorFactory
validateCacheTypeVersusSelectionOrder
Methods inherited from class org.optaplanner.core.impl.AbstractFromConfigFactory
deduceEntityDescriptor, deduceGenuineVariableDescriptor, deduceVariableDescriptorList, getDefaultEntitySelectorConfigForEntity, getTheOnlyEntityDescriptor, getTheOnlyVariableDescriptor, getVariableDescriptorForName
-
Constructor Details
-
SwapMoveSelectorFactory
-
-
Method Details
-
buildBaseMoveSelector
protected MoveSelector<Solution_> buildBaseMoveSelector(HeuristicConfigPolicy<Solution_> configPolicy, SelectionCacheType minimumCacheType, boolean randomSelection) Description copied from class:AbstractMoveSelectorFactory
Builds a baseMoveSelector
without any advanced capabilities (filtering, sorting, ...).- Specified by:
buildBaseMoveSelector
in classAbstractMoveSelectorFactory<Solution_,
SwapMoveSelectorConfig> - Parameters:
configPolicy
- never nullminimumCacheType
- never null, If caching is used (different fromSelectionCacheType.JUST_IN_TIME
), then it should be at least thisSelectionCacheType
because an ancestor already uses such caching and less would be pointless.randomSelection
- true is equivalent toSelectionOrder.RANDOM
, false is equivalent toSelectionOrder.ORIGINAL
- Returns:
- never null
-
buildUnfoldedMoveSelectorConfig
protected MoveSelectorConfig<?> buildUnfoldedMoveSelectorConfig(HeuristicConfigPolicy<Solution_> configPolicy) Description copied from class:AbstractMoveSelectorFactory
To provide unfolded MoveSelectorConfig, override this method in a subclass.- Overrides:
buildUnfoldedMoveSelectorConfig
in classAbstractMoveSelectorFactory<Solution_,
SwapMoveSelectorConfig> - Parameters:
configPolicy
- never null- Returns:
- null if no unfolding is needed
-
buildUnfoldedMoveSelectorConfig
protected MoveSelectorConfig<?> buildUnfoldedMoveSelectorConfig(Collection<EntityDescriptor<Solution_>> entityDescriptors)
-