OptaPlanner core 6.1.0.Beta2

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

All Superinterfaces:
EventListener, SolverLifecycleListener, SolverPhaseLifecycleListener
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, DefaultSubChainSelector, EntityDependentSortingValueSelector, FilteringEntitySelector, FilteringMoveSelector, FromEntityPropertyValueSelector, FromSolutionEntitySelector, FromSolutionPropertyValueSelector, GenericMoveSelector, InitializedValueSelector, MimicRecordingEntitySelector, MimicReplayingEntitySelector, MoveIteratorFactoryToMoveSelectorBridge, MoveListFactoryToMoveSelectorBridge, PillarSwapMoveSelector, ProbabilityEntitySelector, ProbabilityMoveSelector, ProbabilityValueSelector, ReinitializeVariableValueSelector, SameValuePillarSelector, SelectedCountLimitEntitySelector, SelectedCountLimitMoveSelector, SelectedCountLimitValueSelector, ShufflingEntitySelector, ShufflingMoveSelector, ShufflingValueSelector, SortingEntitySelector, SortingMoveSelector, SortingValueSelector, SubChainChangeMoveSelector, SubChainSwapMoveSelector, SwapMoveSelector, UnionMoveSelector

public interface Selector
extends SolverPhaseLifecycleListener

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.SolverPhaseLifecycleListener
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.1.0.Beta2

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