OptaPlanner core 6.2.0.Beta1

org.optaplanner.core.impl.heuristic.selector
Interface Selector

All Superinterfaces:
EventListener, PhaseLifecycleListener, SolverLifecycleListener
All Known Subinterfaces:
EntityIndependentValueSelector, EntitySelector, IterableSelector<T>, ListIterableSelector<T>, MoveSelector, PillarSelector, SubChainSelector, ValueSelector
All Known Implementing Classes:
AbstractCachingEntitySelector, AbstractCachingMoveSelector, AbstractCachingValueSelector, AbstractEntitySelector, AbstractMoveSelector, AbstractSelector, AbstractValueSelector, CachingEntitySelector, CachingMoveSelector, CachingValueSelector, CartesianProductMoveSelector, ChangeMoveSelector, CompositeMoveSelector, DefaultPillarSelector, DefaultSubChainSelector, DowncastingValueSelector, EntityDependentSortingValueSelector, FilteringEntitySelector, FilteringMoveSelector, FromEntityPropertyValueSelector, FromSolutionEntitySelector, FromSolutionPropertyValueSelector, GenericMoveSelector, InitializedValueSelector, MimicRecordingEntitySelector, MimicReplayingEntitySelector, MoveIteratorFactoryToMoveSelectorBridge, MoveListFactoryToMoveSelectorBridge, PillarChangeMoveSelector, PillarSwapMoveSelector, ProbabilityEntitySelector, ProbabilityMoveSelector, ProbabilityValueSelector, ReinitializeVariableValueSelector, SelectedCountLimitEntitySelector, SelectedCountLimitMoveSelector, SelectedCountLimitValueSelector, ShufflingEntitySelector, ShufflingMoveSelector, ShufflingValueSelector, SortingEntitySelector, SortingMoveSelector, SortingValueSelector, SubChainChangeMoveSelector, SubChainSwapMoveSelector, SwapMoveSelector, UnionMoveSelector

public interface Selector
extends PhaseLifecycleListener

General interface for MoveSelector, EntitySelector and ValueSelector which generates Moves or parts of them.


Method Summary
 SelectionCacheType getCacheType()
          Unless this selector itself caches, this returns SelectionCacheType.JUST_IN_TIME, even if a selector child caches.
 boolean isCountable()
          If false, then isNeverEnding() is true.
 boolean isNeverEnding()
          Is true if isCountable() is false or if this selector is in random order (for most cases).
 
Methods inherited from interface org.optaplanner.core.impl.phase.event.PhaseLifecycleListener
phaseEnded, phaseStarted, stepEnded, stepStarted
 
Methods inherited from interface org.optaplanner.core.impl.solver.event.SolverLifecycleListener
solvingEnded, solvingStarted
 

Method Detail

isCountable

boolean isCountable()
If false, then isNeverEnding() is true.

Returns:
true if all the ValueRanges are countable (for example a double value range between 1.2 and 1.4 is not countable)

isNeverEnding

boolean isNeverEnding()
Is true if isCountable() is false or if this selector is in random order (for most cases). Is never true when this selector is in shuffled order (which is less scalable but more exact).

Returns:
true if the Iterator.hasNext() of the Iterator created by Iterable.iterator() never returns false (except when it's empty).

getCacheType

SelectionCacheType getCacheType()
Unless this selector itself caches, this returns SelectionCacheType.JUST_IN_TIME, even if a selector child caches.

Returns:
never null

OptaPlanner core 6.2.0.Beta1

Copyright © 2006-2014 JBoss by Red Hat. All Rights Reserved.