# All Classes

- All Classes Interface Summary Class Summary Enum Summary Exception Summary Annotation Types Summary
  Class | Description
  --- | ---
  AbstractAcceptor<Solution_> | Abstract superclass for `Acceptor`.
  AbstractBendableScore<Score_ extends AbstractBendableScore<Score_>> | Abstract superclass for bendable `Score` types.
  AbstractBendableScoreDefinition<Score_ extends Score<Score_>> |
  AbstractBiJoiner<A,​B> |
  AbstractCachingEntitySelector<Solution_> |
  AbstractCachingMoveSelector<Solution_> |
  AbstractCachingValueSelector<Solution_> |
  AbstractCompositeTermination<Solution_> | Abstract superclass that combines multiple `Termination`s.
  AbstractConfig<Config_ extends AbstractConfig<Config_>> | A config class is a user friendly, validating configuration class that maps XML input.
  AbstractConstraint<Solution_,​ConstraintFactory extends InnerConstraintFactory<Solution_>> |
  AbstractConstraintConsequence<LeftHandSide_ extends org.optaplanner.core.impl.score.stream.drools.common.AbstractLeftHandSide> |
  AbstractConstraintStream<Solution_> |
  AbstractConstraintStreamHelper<Right,​JoinedStream,​Joiner,​Predicate> |
  AbstractConstructionHeuristicForager<Solution_> |
  AbstractCountableValueRange<T> | Abstract superclass for `CountableValueRange` (and therefore `ValueRange`).
  AbstractEntityPlacer<Solution_> | Abstract superclass for `EntityPlacer`.
  AbstractEntitySelector<Solution_> | Abstract superclass for `EntitySelector`.
  AbstractEventSupport<E extends EventListener> |
  AbstractFinalistPodium<Solution_> | Abstract superclass for `FinalistPodium`.
  AbstractFromConfigFactory<Solution_,​Config_ extends AbstractConfig<Config_>> |
  AbstractFromPropertyValueRangeDescriptor<Solution_> |
  AbstractJoiner |
  AbstractLocalSearchForager<Solution_> | Abstract superclass for `LocalSearchForager`.
  AbstractMove<Solution_> | Abstract superclass for `Move`.
  AbstractMoveScope<Solution_> |
  AbstractMoveSelector<Solution_> | Abstract superclass for `MoveSelector`.
  AbstractMoveSelectorFactory<Solution_,​MoveSelectorConfig_ extends MoveSelectorConfig<MoveSelectorConfig_>> |
  AbstractOriginalChangeIterator<Solution_,​Move_ extends Move<Solution_>> |
  AbstractOriginalSwapIterator<Solution_,​Move_ extends Move<Solution_>,​SubSelection_> |
  AbstractPentaJoiner<A,​B,​C,​D,​E> |
  AbstractPhase<Solution_> |
  AbstractPhaseFactory<Solution_,​PhaseConfig_ extends PhaseConfig<PhaseConfig_>> |
  AbstractPhaseScope<Solution_> |
  AbstractPillarMoveSelectorConfig<Config_ extends AbstractPillarMoveSelectorConfig<Config_>> |
  AbstractQuadJoiner<A,​B,​C,​D> |
  AbstractRandomChangeIterator<Solution_,​Move_ extends Move<Solution_>> |
  AbstractRandomSwapIterator<Solution_,​Move_ extends Move<Solution_>,​SubSelection_> |
  AbstractScore<Score_ extends AbstractScore<Score_>> | Abstract superclass for `Score`.
  AbstractScoreDefinition<Score_ extends Score<Score_>> | Abstract superclass for `ScoreDefinition`.
  AbstractScoreDirector<Solution_,​Score_ extends Score<Score_>,​Factory_ extends AbstractScoreDirectorFactory<Solution_,​Score_>> | Abstract superclass for `ScoreDirector`.
  AbstractScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> | Abstract superclass for `ScoreDirectorFactory`.
  AbstractScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  AbstractScoreHolder<Score_ extends Score<Score_>> | Abstract superclass for `ScoreHolder`.
  AbstractScoreJacksonDeserializer<Score_ extends Score<Score_>> | Jackson binding support for a `Score` type.
  AbstractScoreJacksonSerializer<Score_ extends Score<Score_>> | Jackson binding support for a `Score` subtype.
  AbstractScoreJaxbAdapter<Score_ extends Score<Score_>> | JAXB binding support for a `Score` type.
  AbstractScoreJsonbAdapter<Score_ extends Score<Score_>> | JSON-B binding support for a `Score` type.
  AbstractScoreVerifier<Solution_> | Used in unit tests to assert that 1 particular solution has a specific weight for a specific constraint.
  AbstractScoreXStreamConverter |
  AbstractSelector<Solution_> | Abstract superclass for `Selector`.
  AbstractSelectorFactory<Solution_,​SelectorConfig_ extends SelectorConfig<SelectorConfig_>> |
  AbstractSolver<Solution_> | Common code between `DefaultSolver` and child solvers (such as `PartitionSolver`.
  AbstractStepScope<Solution_> |
  AbstractTabuAcceptor<Solution_> | Abstract superclass for all Tabu Acceptors.
  AbstractTabuSizeStrategy<Solution_> |
  AbstractTermination<Solution_> | Abstract superclass for `Termination`.
  AbstractTriJoiner<A,​B,​C> |
  AbstractUncountableValueRange<T> | Abstract superclass for `ValueRange` that is not a `CountableValueRange`).
  AbstractValueRangeDescriptor<Solution_> |
  AbstractValueSelector<Solution_> | Abstract superclass for `ValueSelector`.
  AcceptedLocalSearchForager<Solution_> | A `LocalSearchForager` which forages accepted moves and ignores unaccepted moves.
  Acceptor<Solution_> | An Acceptor accepts or rejects a selected `Move`.
  AcceptorFactory<Solution_> |
  AcceptorType |
  AlphabeticMemberComparator |
  AnchorShadowVariable | Specifies that a bean property (or a field) is the anchor of a chained `PlanningVariable`, which implies it's a shadow variable.
  AnchorShadowVariableDescriptor<Solution_> |
  AnchorVariableDemand<Solution_> |
  AnchorVariableListener<Solution_> |
  AnchorVariableSupply | Only supported for chained variables.
  AndCompositeTermination<Solution_> |
  ApplyStepOperation<Solution_,​Score_ extends Score<Score_>> |
  AutoDiscoverMemberType | Determines if and how to automatically presume `ConstraintConfigurationProvider`, `ProblemFactCollectionProperty`, `ProblemFactProperty`, `PlanningEntityCollectionProperty`, `PlanningEntityProperty` and `PlanningScore` annotations on `PlanningSolution` members based from the member type.
  BasicPlumbingTermination<Solution_> | Concurrency notes: Condition predicate on (`BasicPlumbingTermination.problemFactChangeQueue` is not empty or `BasicPlumbingTermination.terminatedEarly` is true).
  BavetAbstractBiConstraintStream<Solution_,​A,​B> |
  BavetAbstractBiNode<A,​B> |
  BavetAbstractBiTuple<A,​B> |
  BavetAbstractConstraintStream<Solution_> |
  BavetAbstractNode |
  BavetAbstractTriConstraintStream<Solution_,​A,​B,​C> |
  BavetAbstractTriNode<A,​B,​C> |
  BavetAbstractTriTuple<A,​B,​C> |
  BavetAbstractTuple |
  BavetAbstractUniConstraintStream<Solution_,​A> |
  BavetAbstractUniNode<A> |
  BavetAbstractUniTuple<A> |
  BavetConstraint<Solution_> |
  BavetConstraintFactory<Solution_> |
  BavetConstraintSession<Solution_,​Score_ extends Score<Score_>> |
  BavetConstraintSessionFactory<Solution_,​Score_ extends Score<Score_>> |
  BavetEqualsAndComparisonIndex<Tuple_ extends BavetJoinBridgeTuple> |
  BavetEqualsIndex<Tuple_ extends BavetJoinBridgeTuple> |
  BavetFilterBiConstraintStream<Solution_,​A,​B> |
  BavetFilterBiNode<A,​B> |
  BavetFilterBiTuple<A,​B> |
  BavetFilterTriConstraintStream<Solution_,​A,​B,​C> |
  BavetFilterTriNode<A,​B,​C> |
  BavetFilterTriTuple<A,​B,​C> |
  BavetFilterUniConstraintStream<Solution_,​A> |
  BavetFilterUniNode<A> |
  BavetFilterUniTuple<A> |
  BavetFromUniConstraintStream<Solution_,​A> |
  BavetFromUniNode<A> |
  BavetFromUniTuple<A> |
  BavetGroupBiConstraintStream<Solution_,​GroupKey_,​ResultContainer_,​Result_> |
  BavetGroupBiNode<GroupKey_,​ResultContainer_,​Result_> |
  BavetGroupBiTuple<GroupKey_,​ResultContainer_,​Result_> |
  BavetGroupBridgeBiConstraintStream<Solution_,​A,​B,​NewA,​ResultContainer_,​NewB> |
  BavetGroupBridgeBiNode<A,​B,​NewA,​ResultContainer_,​NewB> |
  BavetGroupBridgeBiTuple<A,​B,​NewA,​ResultContainer_,​NewB> |
  BavetGroupBridgeTuple |
  BavetGroupBridgeUniConstraintStream<Solution_,​A,​NewA,​ResultContainer_,​NewB> |
  BavetGroupBridgeUniNode<A,​NewA,​ResultContainer_,​NewB> |
  BavetGroupBridgeUniTuple<A,​NewA,​ResultContainer_,​NewB> |
  BavetGroupTuple |
  BavetIndex<Tuple_ extends BavetJoinBridgeTuple> |
  BavetIndexFactory |
  BavetIndexKey |
  BavetJoinBiConstraintStream<Solution_,​A,​B> |
  BavetJoinBiNode<A,​B> |
  BavetJoinBiTuple<A,​B> |
  BavetJoinBridgeBiConstraintStream<Solution_,​A,​B> |
  BavetJoinBridgeBiNode<A,​B> |
  BavetJoinBridgeBiTuple<A,​B> |
  BavetJoinBridgeConstraintStream<Solution_> |
  BavetJoinBridgeNode |
  BavetJoinBridgeTuple |
  BavetJoinBridgeUniConstraintStream<Solution_,​A> |
  BavetJoinBridgeUniNode<A> |
  BavetJoinBridgeUniTuple<A> |
  BavetJoinConstraintStream<Solution_> |
  BavetJoinNode |
  BavetJoinTriConstraintStream<Solution_,​A,​B,​C> |
  BavetJoinTriNode<A,​B,​C> |
  BavetJoinTriTuple<A,​B,​C> |
  BavetJoinTuple |
  BavetNode |
  BavetNodeBuildPolicy<Solution_> |
  BavetNoneIndex<Tuple_ extends BavetJoinBridgeTuple> |
  BavetScoringBiConstraintStream<Solution_,​A,​B> |
  BavetScoringBiNode<A,​B> |
  BavetScoringBiTuple<A,​B> |
  BavetScoringNode |
  BavetScoringTriConstraintStream<Solution_,​A,​B,​C> |
  BavetScoringTriNode<A,​B,​C> |
  BavetScoringTriTuple<A,​B,​C> |
  BavetScoringTuple |
  BavetScoringUniConstraintStream<Solution_,​A> |
  BavetScoringUniNode<A> |
  BavetScoringUniTuple<A> |
  BavetTuple |
  BavetTupleState |
  BenchmarkAggregator |
  BenchmarkAggregatorFrame |
  BenchmarkReport |
  BenchmarkReportConfig |
  BenchmarkReportFactory |
  BenchmarkResult |
  BenchmarkResultIO |
  BendableBigDecimalScore | This `Score` is based on n levels of `BigDecimal` constraints.
  BendableBigDecimalScoreConverter |
  BendableBigDecimalScoreDefinition |
  BendableBigDecimalScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  BendableBigDecimalScoreHolder |
  BendableBigDecimalScoreHolderImpl |
  BendableBigDecimalScoreInliner |
  BendableBigDecimalScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  BendableBigDecimalScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  BendableBigDecimalScoreJaxbAdapter | JAXB binding support for a `Score` type.
  BendableBigDecimalScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  BendableBigDecimalScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `BendableBigDecimalScore`.
  BendableBigDecimalScoreXStreamConverter |
  BendableLongScore | This `Score` is based on n levels of long constraints.
  BendableLongScoreConverter |
  BendableLongScoreDefinition |
  BendableLongScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  BendableLongScoreHolder |
  BendableLongScoreHolderImpl |
  BendableLongScoreInliner |
  BendableLongScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  BendableLongScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  BendableLongScoreJaxbAdapter | JAXB binding support for a `Score` type.
  BendableLongScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  BendableLongScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `BendableLongScore`.
  BendableLongScoreXStreamConverter |
  BendableScore | This `Score` is based on n levels of int constraints.
  BendableScoreConverter |
  BendableScoreDefinition |
  BendableScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  BendableScoreHolder |
  BendableScoreHolderImpl |
  BendableScoreInliner |
  BendableScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  BendableScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  BendableScoreJaxbAdapter | JAXB binding support for a `Score` type.
  BendableScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  BendableScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `BendableScore`.
  BendableScoreXStreamConverter |
  BestScoreFeasibleTermination<Solution_> |
  BestScoreProblemStatistic |
  BestScoreStatisticPoint |
  BestScoreSubSingleStatistic<Solution_> |
  BestScoreTermination<Solution_> |
  BestSolutionChangedEvent<Solution_> | Delivered when the `best solution` changes during solving.
  BestSolutionMutationProblemStatistic |
  BestSolutionMutationStatisticPoint |
  BestSolutionMutationSubSingleStatistic<Solution_> |
  BestSolutionRecaller<Solution_> | Remembers the `best solution` that a `Solver` encounters.
  BestSolutionRecallerFactory |
  BetaDistributionNearbyRandom |
  BiConstraintCollector<A,​B,​ResultContainer_,​Result_> | Usually created with `ConstraintCollectors`.
  BiConstraintStream<A,​B> | A `ConstraintStream` that matches two facts.
  BiConstraintStreamHelper<A,​B,​C> |
  BigDecimalValueRange |
  BigDecimalWeightedScoreImpacter |
  BigIntegerValueRange |
  BiJoiner<A,​B> | Created with `Joiners`.
  BiLeftHandSide<A,​B> | Represents the left hand side of a Drools rule, the result of which are two variables.
  BiTuple<A,​B> |
  BlockDistributionNearbyRandom |
  BooleanValueRange |
  BreadthFirstNodeComparator | Investigate nodes layer by layer: investigate shallower nodes first.
  CachedListRandomIterator<S> | This `Iterator` does not shuffle and is never ending.
  CachingEntitySelector<Solution_> | A `EntitySelector` that caches the result of its child `EntitySelector`.
  CachingMoveSelector<Solution_> | A `MoveSelector` that caches the result of its child `MoveSelector`.
  CachingValueSelector<Solution_> | A `ValueSelector` that caches the result of its child `ValueSelector`.
  CartesianProductMoveSelector<Solution_> | A `CompositeMoveSelector` that Cartesian products 2 or more `MoveSelector`s.
  CartesianProductMoveSelectorConfig |
  CartesianProductMoveSelectorFactory<Solution_> |
  ChainedChangeMove<Solution_> |
  ChainedSwapMove<Solution_> |
  ChangeMove<Solution_> |
  ChangeMoveSelector<Solution_> |
  ChangeMoveSelectorConfig |
  ChangeMoveSelectorFactory<Solution_> |
  CheckBoxTree |
  ChildThreadPlumbingTermination<Solution_> |
  ChildThreadType |
  ClassAndPlanningIdComparator |
  CollectionInverseVariableDemand<Solution_> | To get an instance, demand a `CollectionInverseVariableDemand` from `InnerScoreDirector.getSupplyManager()`.
  CollectionInverseVariableListener<Solution_> |
  CollectionInverseVariableSupply |
  ComparatorSelectionSorter<Solution_,​T> | Sorts a selection `List` based on a `Comparator`.
  CompositeAcceptor<Solution_> | Combines several acceptors into one.
  CompositeBiJoiner<A,​B> |
  CompositeCountableValueRange<T> |
  CompositeMove<Solution_> | A CompositeMove is composed out of multiple other moves.
  CompositeMoveSelector<Solution_> | Abstract superclass for every composite `MoveSelector`.
  CompositePentaJoiner<A,​B,​C,​D,​E> |
  CompositeQuadJoiner<A,​B,​C,​D> |
  CompositeSelectionFilter<Solution_,​T> | Combines several `SelectionFilter`s into one.
  CompositeTriJoiner<A,​B,​C> |
  CompositeValueRangeDescriptor<Solution_> |
  ConcurrentMemoization<K,​V> | A thread-safe memoization that caches a calculation.
  ConfigUtils |
  Constraint | This represents a single constraint in the `ConstraintStream` API that impacts the `Score`.
  ConstraintCollectors | Creates an `UniConstraintCollector`, `BiConstraintCollector`, ...
  ConstraintConfiguration | Allows end users to change the constraint weights, by not hard coding them.
  ConstraintConfigurationDescriptor<Solution_> |
  ConstraintConfigurationProvider | Specifies that a property (or a field) on a `PlanningSolution` class is a `ConstraintConfiguration`.
  ConstraintFactory | WARNING: The ConstraintStreams/ConstraintProvider API is TECH PREVIEW.
  ConstraintMatch<Score_ extends Score<Score_>> | Retrievable from `ConstraintMatchTotal.getConstraintMatchSet()` and `Indictment.getConstraintMatchSet()`.
  ConstraintMatchAwareIncrementalScoreCalculator<Solution_,​Score_ extends Score<Score_>> | Allows a `IncrementalScoreCalculator` to report `ConstraintMatchTotal`s for explaining a score (= which score constraints match for how much) and also for score corruption analysis.
  ConstraintMatchTotal<Score_ extends Score<Score_>> | Explains the `Score` of a `PlanningSolution`, from the opposite side than `Indictment`.
  ConstraintMatchTotalBestScoreStatisticPoint |
  ConstraintMatchTotalBestScoreSubSingleStatistic<Solution_> |
  ConstraintMatchTotalStepScoreStatisticPoint |
  ConstraintMatchTotalStepScoreSubSingleStatistic<Solution_> |
  ConstraintProvider | WARNING: The ConstraintStreams/ConstraintProvider API is TECH PREVIEW.
  ConstraintSession<Solution_,​Score_ extends Score<Score_>> | An instance of this class must be used in only one thread.
  ConstraintSessionFactory<Solution_,​Score_ extends Score<Score_>> |
  ConstraintStream | A constraint stream is a declaration on how to match `one`, `two` or more objects.
  ConstraintStreamImplType |
  ConstraintStreamScoreDirector<Solution_,​Score_ extends Score<Score_>> | FP streams implementation of `ScoreDirector`, which only recalculates the `Score` of the part of the `working solution` that changed, instead of the going through the entire `PlanningSolution`.
  ConstraintStreamScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> | FP streams implementation of `ScoreDirectorFactory`.
  ConstraintVerifier<ConstraintProvider_ extends ConstraintProvider,​Solution_> |
  ConstraintWeight | Specifies that a bean property (or a field) set the constraint weight and score level of a constraint.
  ConstraintWeightDescriptor<Solution_> |
  ConstructionHeuristicDecider<Solution_> |
  ConstructionHeuristicForager<Solution_> |
  ConstructionHeuristicForagerConfig |
  ConstructionHeuristicForagerFactory<Solution_> |
  ConstructionHeuristicMoveScope<Solution_> |
  ConstructionHeuristicPhase<Solution_> | A `ConstructionHeuristicPhase` is a `Phase` which uses a construction heuristic algorithm, such as First Fit, First Fit Decreasing, Cheapest Insertion, ...
  ConstructionHeuristicPhaseConfig |
  ConstructionHeuristicPhaseLifecycleListener<Solution_> |
  ConstructionHeuristicPhaseLifecycleListenerAdapter<Solution_> | An adapter for `ConstructionHeuristicPhaseLifecycleListener`.
  ConstructionHeuristicPhaseScope<Solution_> |
  ConstructionHeuristicPickEarlyType |
  ConstructionHeuristicStepScope<Solution_> |
  ConstructionHeuristicType |
  CountableValueRange<T> | A `ValueRange` that is ending.
  CustomPhase<Solution_> | A `CustomPhase` is a `Phase` which uses `CustomPhaseCommand`s.
  CustomPhaseCommand<Solution_> | Runs a custom algorithm as a `Phase` of the `Solver` that changes the planning variables.
  CustomPhaseConfig |
  CustomPhaseScope<Solution_> |
  CustomShadowVariable | Specifies that a bean property (or a field) is a custom shadow of 1 or more `PlanningVariable`'s.
  CustomShadowVariable.NullVariableListener | Workaround for annotation limitation in `CustomShadowVariable.variableListenerClass()`.
  CustomShadowVariableDemand<Solution_> | Unlike other `Demand`s, a custom demand isn't equalized based on its sources, but based on its target.
  CustomShadowVariableDescriptor<Solution_> |
  CustomStepScope<Solution_> |
  DeepPlanningClone | Marks a problem fact class as being required to be deep planning cloned.
  DefaultBiConstraintCollector<A,​B,​ResultContainer_,​Result_> |
  DefaultConstraintMatchTotal<Score_ extends Score<Score_>> |
  DefaultConstraintVerifier<ConstraintProvider_ extends ConstraintProvider,​Solution_,​Score_ extends Score<Score_>> |
  DefaultConstructionHeuristicForager<Solution_> |
  DefaultConstructionHeuristicPhase<Solution_> | Default implementation of `ConstructionHeuristicPhase`.
  DefaultConstructionHeuristicPhaseFactory<Solution_> |
  DefaultCustomPhase<Solution_> | Default implementation of `CustomPhase`.
  DefaultCustomPhaseFactory<Solution_> |
  DefaultExhaustiveSearchPhase<Solution_> | Default implementation of `ExhaustiveSearchPhase`.
  DefaultExhaustiveSearchPhaseFactory<Solution_> |
  DefaultIndictment<Score_ extends Score<Score_>> |
  DefaultLocalSearchPhase<Solution_> | Default implementation of `LocalSearchPhase`.
  DefaultLocalSearchPhaseFactory<Solution_> |
  DefaultMultiConstraintAssertion<Solution_,​Score_ extends Score<Score_>> |
  DefaultMultiConstraintVerification<Solution_,​Score_ extends Score<Score_>> |
  DefaultPartitionedSearchPhase<Solution_> | Default implementation of `PartitionedSearchPhase`.
  DefaultPartitionedSearchPhaseFactory<Solution_> |
  DefaultPillarSelector<Solution_> |
  DefaultPlannerBenchmark |
  DefaultPlannerBenchmarkFactory |
  DefaultQuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> |
  DefaultRandomFactory |
  DefaultScoreExplanation<Solution_,​Score_ extends Score<Score_>> |
  DefaultScoreManager<Solution_,​Score_ extends Score<Score_>> |
  DefaultSingleConstraintAssertion<Solution_,​Score_ extends Score<Score_>> |
  DefaultSingleConstraintVerification<Solution_,​Score_ extends Score<Score_>> |
  DefaultSolver<Solution_> | Default implementation for `Solver`.
  DefaultSolverFactory<Solution_> |
  DefaultSolverFactory.MoveThreadCountResolver |
  DefaultSolverJob<Solution_,​ProblemId_> |
  DefaultSolverManager<Solution_,​ProblemId_> |
  DefaultSolverThreadFactory | Similar to `Executors`'s DefaultThreadFactory, but allows settings a namePrefix.
  DefaultSubChainSelector<Solution_> | This is the common `SubChainSelector` implementation.
  DefaultTriConstraintCollector<A,​B,​C,​ResultContainer_,​Result_> |
  DefaultUniConstraintCollector<A,​ResultContainer_,​Result_> |
  Demand<Solution_,​Supply_ extends Supply> | A subsystem submits a demand for a `Supply`.
  DepthFirstNodeComparator | Investigate deeper nodes first.
  DescriptorPolicy |
  DestroyOperation<Solution_> |
  DomainAccessType | Determines how members (fields and methods) of the domain are accessed.
  DoubleValueRange |
  DowncastingValueSelector<Solution_> |
  DroolsAbstractBiConstraintStream<Solution_,​A,​B> |
  DroolsAbstractConstraintStream<Solution_> |
  DroolsAbstractQuadConstraintStream<Solution_,​A,​B,​C,​D> |
  DroolsAbstractTriConstraintStream<Solution_,​A,​B,​C> |
  DroolsAbstractUniConstraintStream<Solution_,​A> |
  DroolsConstraint<Solution_> |
  DroolsConstraintFactory<Solution_> |
  DroolsConstraintSession<Solution_,​Score_ extends Score<Score_>> |
  DroolsConstraintSessionFactory<Solution_,​Score_ extends Score<Score_>> |
  DroolsExistsBiConstraintStream<Solution_,​A,​B> |
  DroolsExistsQuadConstraintStream<Solution_,​A,​B,​C,​D> |
  DroolsExistsTriConstraintStream<Solution_,​A,​B,​C> |
  DroolsExistsUniConstraintStream<Solution_,​A> |
  DroolsFilterBiConstraintStream<Solution_,​A,​B> |
  DroolsFilterQuadConstraintStream<Solution_,​A,​B,​C,​D> |
  DroolsFilterTriConstraintStream<Solution_,​A,​B,​C> |
  DroolsFilterUniConstraintStream<Solution_,​A> |
  DroolsFromUniConstraintStream<Solution_,​A> |
  DroolsGroupingBiConstraintStream<Solution_,​NewA,​NewB> |
  DroolsGroupingQuadConstraintStream<Solution_,​NewA,​NewB,​NewC,​NewD> |
  DroolsGroupingTriConstraintStream<Solution_,​NewA,​NewB,​NewC> |
  DroolsGroupingUniConstraintStream<Solution_,​NewA> |
  DroolsJoinBiConstraintStream<Solution_,​A,​B> |
  DroolsJoinQuadConstraintStream<Solution_,​A,​B,​C,​D> |
  DroolsJoinTriConstraintStream<Solution_,​A,​B,​C> |
  DroolsScoreDirector<Solution_,​Score_ extends Score<Score_>> | Drools implementation of `ScoreDirector`, which directs the Rule Engine to calculate the `Score` of the `working solution`.
  DroolsScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> | Drools implementation of `ScoreDirectorFactory`.
  DroolsVariableFactory | Creates `Variable`s with unique names, by adding numeric suffixes to the user-provided names.
  EasyScoreCalculator<Solution_,​Score_ extends Score<Score_>> | Used for easy java `Score` calculation.
  EasyScoreDirector<Solution_,​Score_ extends Score<Score_>> | Easy java implementation of `ScoreDirector`, which recalculates the `Score` of the `working solution` every time.
  EasyScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> | Easy implementation of `ScoreDirectorFactory`.
  ElementNamespaceOverride |
  EmptyValueRange<T> |
  EntityDependentSortingValueSelector<Solution_> |
  EntityDescriptor<Solution_> |
  EntityIndependentFilteringValueSelector<Solution_> |
  EntityIndependentInitializedValueSelector<Solution_> |
  EntityIndependentValueRangeDescriptor<Solution_> |
  EntityIndependentValueSelector<Solution_> |
  EntityMimicRecorder<Solution_> |
  EntityPlacer<Solution_> |
  EntityPlacerConfig<Config_ extends EntityPlacerConfig<Config_>> | General superclass for `QueuedEntityPlacerConfig` and `PooledEntityPlacerConfig`.
  EntityPlacerFactory<Solution_> |
  EntityRatioTabuSizeStrategy<Solution_> |
  EntitySelector<Solution_> | Selects instances of 1 `PlanningEntity` annotated class.
  EntitySelectorConfig |
  EntitySelectorFactory<Solution_> |
  EntitySorterManner | The manner of sorting `PlanningEntity` instances.
  EntityTabuAcceptor<Solution_> |
  EnvironmentMode | The environment mode also allows you to detect common bugs in your implementation.
  EqualsLookUpStrategy |
  ExhaustiveSearchDecider<Solution_> |
  ExhaustiveSearchLayer |
  ExhaustiveSearchNode |
  ExhaustiveSearchPhase<Solution_> | A `ExhaustiveSearchPhase` is a `Phase` which uses an exhaustive algorithm, such as Brute Force.
  ExhaustiveSearchPhaseConfig |
  ExhaustiveSearchPhaseLifecycleListener<Solution_> |
  ExhaustiveSearchPhaseScope<Solution_> |
  ExhaustiveSearchStepScope<Solution_> |
  ExhaustiveSearchType |
  ExternalizedAnchorVariableSupply<Solution_> | Alternative to `AnchorVariableListener`.
  ExternalizedCollectionInverseVariableSupply<Solution_> | Alternative to `CollectionInverseVariableListener`.
  ExternalizedSingletonInverseVariableSupply<Solution_> | Alternative to `SingletonInverseVariableListener`.
  FactTuple |
  FairSelectorProbabilityWeightFactory<Solution_> |
  FieldAccessingSolutionCloner<Solution_> |
  FieldAccessingSolutionCloner.Unprocessed |
  FileProblemProvider<Solution_> |
  FilteringBiJoiner<A,​B> |
  FilteringEntitySelector<Solution_> |
  FilteringMoveSelector<Solution_> |
  FilteringPentaJoiner<A,​B,​C,​D,​E> |
  FilteringQuadJoiner<A,​B,​C,​D> |
  FilteringTriJoiner<A,​B,​C> |
  FilteringValueSelector<Solution_> |
  FinalistPodium<Solution_> | A podium gathers the finalists (the `LocalSearchMoveScope`s which might win) and picks the winner.
  FinalistPodiumType |
  FixedSelectorProbabilityWeightFactory<Solution_,​Selector_ extends Selector> |
  FixedTabuSizeStrategy<Solution_> |
  FlatteningHardSoftScoreComparator | Compares 2 `HardSoftScore`s based on the calculation of the hard multiplied by a weight, summed with the soft.
  FromEntityPropertyValueRangeDescriptor<Solution_> |
  FromEntityPropertyValueSelector<Solution_> | This is the common `ValueSelector` implementation.
  FromSolutionEntitySelector<Solution_> | This is the common `EntitySelector` implementation.
  FromSolutionPropertyValueRangeDescriptor<Solution_> |
  FromSolutionPropertyValueSelector<Solution_> | This is the common `ValueSelector` implementation.
  GenericJaxbIO<T> |
  GenericMoveSelector<Solution_> | Abstract superclass for every generic `MoveSelector`.
  GenuineVariableDescriptor<Solution_> |
  GizmoMemberAccessorFactory |
  GizmoMemberAccessorImplementor | Generates the bytecode for the MemberAccessor of a particular Member
  GizmoMemberDescriptor | Describe and provide simplified/unified access for a Member
  GraphSupport |
  GreatDelugeAcceptor<Solution_> |
  HardMediumSoftBigDecimalScore | This `Score` is based on 3 levels of `BigDecimal` constraints: hard, medium and soft.
  HardMediumSoftBigDecimalScoreConverter |
  HardMediumSoftBigDecimalScoreDefinition |
  HardMediumSoftBigDecimalScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardMediumSoftBigDecimalScoreHolder |
  HardMediumSoftBigDecimalScoreHolderImpl |
  HardMediumSoftBigDecimalScoreInliner |
  HardMediumSoftBigDecimalScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardMediumSoftBigDecimalScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  HardMediumSoftBigDecimalScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardMediumSoftBigDecimalScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardMediumSoftBigDecimalScoreXStreamConverter |
  HardMediumSoftLongScore | This `Score` is based on 3 levels of long constraints: hard, medium and soft.
  HardMediumSoftLongScoreConverter |
  HardMediumSoftLongScoreDefinition |
  HardMediumSoftLongScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardMediumSoftLongScoreHolder |
  HardMediumSoftLongScoreHolderImpl |
  HardMediumSoftLongScoreInliner |
  HardMediumSoftLongScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardMediumSoftLongScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  HardMediumSoftLongScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardMediumSoftLongScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardMediumSoftLongScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `HardMediumSoftLongScore`.
  HardMediumSoftLongScoreXStreamConverter |
  HardMediumSoftScore | This `Score` is based on 3 levels of int constraints: hard, medium and soft.
  HardMediumSoftScoreConverter |
  HardMediumSoftScoreDefinition |
  HardMediumSoftScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardMediumSoftScoreHolder |
  HardMediumSoftScoreHolderImpl |
  HardMediumSoftScoreInliner |
  HardMediumSoftScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardMediumSoftScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardMediumSoftScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardMediumSoftScoreJsonSerializer | Jackson binding support for a `Score` subtype.
  HardMediumSoftScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `HardMediumSoftScore`.
  HardMediumSoftScoreXStreamConverter |
  HardSoftBigDecimalScore | This `Score` is based on 2 levels of `BigDecimal` constraints: hard and soft.
  HardSoftBigDecimalScoreConverter |
  HardSoftBigDecimalScoreDefinition |
  HardSoftBigDecimalScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardSoftBigDecimalScoreHolder |
  HardSoftBigDecimalScoreHolderImpl |
  HardSoftBigDecimalScoreInliner |
  HardSoftBigDecimalScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardSoftBigDecimalScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  HardSoftBigDecimalScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardSoftBigDecimalScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardSoftBigDecimalScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `HardSoftBigDecimalScore`.
  HardSoftBigDecimalScoreXStreamConverter |
  HardSoftLongScore | This `Score` is based on 2 levels of long constraints: hard and soft.
  HardSoftLongScoreConverter |
  HardSoftLongScoreDefinition |
  HardSoftLongScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardSoftLongScoreHolder |
  HardSoftLongScoreHolderImpl |
  HardSoftLongScoreInliner |
  HardSoftLongScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardSoftLongScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  HardSoftLongScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardSoftLongScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardSoftLongScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `HardSoftLongScore`.
  HardSoftLongScoreXStreamConverter |
  HardSoftScore | This `Score` is based on 2 levels of int constraints: hard and soft.
  HardSoftScoreConverter |
  HardSoftScoreDefinition |
  HardSoftScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  HardSoftScoreHolder |
  HardSoftScoreHolderImpl |
  HardSoftScoreInliner |
  HardSoftScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  HardSoftScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  HardSoftScoreJaxbAdapter | JAXB binding support for a `Score` type.
  HardSoftScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  HardSoftScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `HardSoftScore`.
  HardSoftScoreXStreamConverter |
  HeuristicConfigPolicy<Solution_> |
  HighestScoreFinalistPodium<Solution_> | Default implementation of `FinalistPodium`.
  HillClimbingAcceptor<Solution_> |
  ImmutableLookUpStrategy |
  IncrementalScoreCalculator<Solution_,​Score_ extends Score<Score_>> | Used for incremental java `Score` calculation.
  IncrementalScoreDirector<Solution_,​Score_ extends Score<Score_>> | Incremental java implementation of `ScoreDirector`, which only recalculates the `Score` of the part of the `working solution` that changed, instead of the going through the entire `PlanningSolution`.
  IncrementalScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> | Incremental implementation of `ScoreDirectorFactory`.
  Indictment<Score_ extends Score<Score_>> | Explains the `Score` of a `PlanningSolution`, from the opposite side than `ConstraintMatchTotal`.
  InitializedValueSelector<Solution_> | Prevents creating chains without an anchor.
  InitializingScoreTrend | Bounds the possible `Score`s for a `PlanningSolution` as more and more variables are initialized (while the already initialized variables don't change).
  InitializingScoreTrendLevel | Bounds 1 score level of the possible `Score`s for a `PlanningSolution` as more and more variables are initialized (while the already initialized variables don't change).
  InnerBiConstraintStream<A,​B> |
  InnerConstraintFactory<Solution_> |
  InnerQuadConstraintStream<A,​B,​C,​D> |
  InnerScoreDirector<Solution_,​Score_ extends Score<Score_>> |
  InnerScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> |
  InnerTriConstraintStream<A,​B,​C> |
  InnerUniConstraintStream<A> |
  InstanceProblemProvider<Solution_> |
  IntValueRange |
  IntWeightedScoreImpacter |
  InverseRelationShadowVariable | Specifies that a bean property (or a field) is the inverse of a `PlanningVariable`, which implies it's a shadow variable.
  InverseRelationShadowVariableDescriptor<Solution_> |
  IterableSelector<Solution_,​T> |
  JacksonSolutionFileIO<Solution_> |
  JaxbCustomPropertiesAdapter |
  JaxbDurationAdapter |
  JaxbIO<T> |
  JaxbLocaleAdapter |
  JaxbOffsetDateTimeAdapter |
  JaxbSolutionFileIO<Solution_> |
  Joiners | Creates an `BiJoiner`, `TriJoiner`, ...
  JoinerType |
  KOptMove<Solution_> |
  KOptMoveSelector<Solution_> |
  KOptMoveSelectorConfig | THIS CLASS IS EXPERIMENTAL AND UNSUPPORTED.
  KOptMoveSelectorFactory<Solution_> |
  LambdaBeanPropertyMemberAccessor | A `MemberAccessor` based on a getter and optionally a setter.
  LateAcceptanceAcceptor<Solution_> |
  LinearDistributionNearbyRandom | `P(x) = 2/m - 2x/m²`.
  ListIterable<T> | An extension on the `Iterable` interface that supports `ListIterable.listIterator()` and `ListIterable.listIterator(int)`.
  ListIterableSelector<Solution_,​T> |
  ListValueRange<T> |
  LocalSearchAcceptorConfig |
  LocalSearchDecider<Solution_> |
  LocalSearchForager<Solution_> | Collects the moves and picks the next step from those for the `LocalSearchDecider`.
  LocalSearchForagerConfig |
  LocalSearchForagerFactory<Solution_> |
  LocalSearchMoveScope<Solution_> |
  LocalSearchPhase<Solution_> | A `LocalSearchPhase` is a `Phase` which uses a Local Search algorithm, such as `Tabu Search`, `Simulated Annealing`, `Late Acceptance`, ...
  LocalSearchPhaseConfig |
  LocalSearchPhaseLifecycleListener<Solution_> |
  LocalSearchPhaseLifecycleListenerAdapter<Solution_> | An adapter for `LocalSearchPhaseLifecycleListener`.
  LocalSearchPhaseScope<Solution_> |
  LocalSearchPickEarlyType |
  LocalSearchStepScope<Solution_> |
  LocalSearchType |
  LongValueRange |
  LongWeightedScoreImpacter |
  LookUpManager |
  LookUpStrategy |
  LookUpStrategyResolver | This class is thread-safe.
  LookUpStrategyType | Determines how `ScoreDirector.lookUpWorkingObject(Object)` maps a `problem fact` or a `planning entity` from an external copy to the internal one.
  ManualEntityMimicRecorder<Solution_> |
  MemberAccessor | Fast and easy access to a `Member` of a bean, which is a property (with a getter and optional setter `Method`) or a `Field`.
  MemberAccessorFactory |
  MemberAccessorFactory.MemberAccessorType |
  MemoryUseMeasurement |
  MemoryUseProblemStatistic |
  MemoryUseStatisticPoint |
  MemoryUseSubSingleStatistic<Solution_> |
  MillisecondsSpentNumberFormat |
  MimicRecordingEntitySelector<Solution_> |
  MimicRecordingValueSelector<Solution_> |
  MimicReplayingEntitySelector<Solution_> |
  MimicReplayingValueSelector<Solution_> |
  MixedCheckBox |
  MixedCheckBox.MixedCheckBoxStatus |
  MovableChainedTrailingValueFilter<Solution_> |
  Move<Solution_> | A Move represents a change of 1 or more `PlanningVariable`s of 1 or more `PlanningEntity`s in the working `PlanningSolution`.
  MoveCountPerStepMeasurement |
  MoveCountPerStepProblemStatistic |
  MoveCountPerStepStatisticPoint |
  MoveCountPerStepSubSingleStatistic<Solution_> |
  MoveEvaluationOperation<Solution_> |
  MoveIteratorFactory<Solution_,​Move_ extends Move<Solution_>> | An interface to generate an `Iterator` of custom `Move`s.
  MoveIteratorFactoryConfig |
  MoveIteratorFactoryFactory<Solution_> |
  MoveIteratorFactoryToMoveSelectorBridge<Solution_> | Bridges a `MoveIteratorFactory` to a `MoveSelector`.
  MoveListFactory<Solution_> | A simple interface to generate a `List` of custom `Move`s.
  MoveListFactoryConfig |
  MoveListFactoryFactory<Solution_> |
  MoveListFactoryToMoveSelectorBridge<Solution_> | Bridges a `MoveListFactory` to a `MoveSelector`.
  MoveSelector<Solution_> | Generates `Move`s.
  MoveSelectorConfig<Config_ extends MoveSelectorConfig<Config_>> | General superclass for `ChangeMoveSelectorConfig`, etc.
  MoveSelectorFactory<Solution_> |
  MoveTabuAcceptor<Solution_> |
  MoveThreadOperation<Solution_> |
  MoveThreadRunner<Solution_,​Score_ extends Score<Score_>> |
  MultiConstraintAssertion |
  MultiConstraintVerification<Solution_> |
  MultiThreadedConstructionHeuristicDecider<Solution_> |
  MultiThreadedLocalSearchDecider<Solution_> |
  MutationCounter<Solution_> |
  NearbyDistanceMatrix |
  NearbyDistanceMeter<O,​D> |
  NearbyRandom | Strategy pattern to select a index of a nearby ordered value range according to a probability distribution.
  NearbyRandomFactory |
  NearbySelectionConfig |
  NearbySelectionDistributionType |
  NearEntityNearbyEntitySelector<Solution_> |
  NearEntityNearbyValueSelector<Solution_> |
  NoChangeCustomPhaseCommand | Makes no changes.
  NoChangeMove<Solution_> | Makes no changes.
  NoChangePhase<Solution_> | A `NoChangePhase` is a `Phase` which does nothing.
  NoChangePhaseConfig |
  NoChangePhaseFactory<Solution_> |
  NodeExplorationType |
  NoneBiJoiner<A,​B> |
  NoneLookUpStrategy |
  NonePentaJoiner<A,​B,​C,​D,​E> |
  NoneQuadJoiner<A,​B,​C,​D> |
  NoneTriJoiner<A,​B,​C> |
  NullableCountableValueRange<T> |
  NullValueReinitializeVariableEntityFilter<Solution_> | Behaves as if it was a UninitializedVariableEntityFilter, except when the variable is `PlanningVariable.nullable()`.
  OptaPlannerBenchmarkCli | Run this class from the command line interface to run a benchmarkConfigFile directly (using the normal classpath from the JVM).
  OptaPlannerJacksonModule | This class adds all Jackson serializers and deserializers.
  OptaPlannerJsonbConfig | This class adds all JSON-B adapters.
  OptaPlannerRuleEventListener |
  OptaPlannerXmlSerializationException |
  OptimisticBoundFirstNodeComparator | Investigate the nodes with a better optimistic bound first, then deeper nodes.
  OrCompositeTermination<Solution_> |
  OrderByMoveIndexBlockingQueue<Solution_> |
  OrderByMoveIndexBlockingQueue.MoveResult<Solution_> |
  OriginalOrderNodeComparator | Investigate deeper nodes first, in order.
  ParabolicDistributionNearbyRandom | `P(x) = 3(m - x)²/m³`.
  PartitionChangedEvent<Solution_> |
  PartitionChangedEvent.PartitionChangedEventType |
  PartitionChangeMove<Solution_> | Applies a new best solution from a partition child solver into the global working solution of the parent solver.
  PartitionedSearchPhase<Solution_> | A `PartitionedSearchPhase` is a `Phase` which uses a Partition Search algorithm.
  PartitionedSearchPhaseConfig |
  PartitionedSearchPhaseLifecycleListener<Solution_> |
  PartitionedSearchPhaseScope<Solution_> |
  PartitionedSearchStepScope<Solution_> |
  PartitionQueue<Solution_> | This class is thread-safe.
  PartitionSolver<Solution_> |
  PentaFunction<A,​B,​C,​D,​E,​R> | Represents a function that accepts five arguments and produces a result.
  PentaJoiner<A,​B,​C,​D,​E> | Created with `Joiners`.
  PentaPredicate<A,​B,​C,​D,​E> | Represents a predicate (boolean-valued function) of five arguments.
  Phase<Solution_> | A phase of a `Solver`.
  PhaseConfig<Config_ extends PhaseConfig<Config_>> |
  PhaseFactory<Solution_> |
  PhaseLifecycleListener<Solution_> |
  PhaseLifecycleListenerAdapter<Solution_> | An adapter for `PhaseLifecycleListener`.
  PhaseLifecycleSupport<Solution_> | Internal API.
  PhaseToSolverTerminationBridge<Solution_> |
  PickedMoveTypeBestScoreDiffStatisticPoint |
  PickedMoveTypeBestScoreDiffSubSingleStatistic<Solution_> |
  PickedMoveTypeStepScoreDiffStatisticPoint |
  PickedMoveTypeStepScoreDiffSubSingleStatistic<Solution_> |
  PillarChangeMove<Solution_> | This `Move` is not cacheable.
  PillarChangeMoveSelector<Solution_> |
  PillarChangeMoveSelectorConfig |
  PillarChangeMoveSelectorFactory<Solution_> |
  PillarSelector<Solution_> | A pillar is a `List` of entities that have the same planning value for each (or a subset) of their planning values.
  PillarSelectorConfig |
  PillarSelectorFactory<Solution_> |
  PillarSwapMove<Solution_> | This `Move` is not cacheable.
  PillarSwapMoveSelector<Solution_> |
  PillarSwapMoveSelectorConfig |
  PillarSwapMoveSelectorFactory<Solution_> |
  PinEntityFilter<Solution_> | Filters out entities that return true for the `PlanningPin` annotated boolean member.
  PinningFilter<Solution_,​Entity_> | Decides on accepting or discarding a `PlanningEntity`.
  Placement<Solution_> |
  PlannerBenchmark | A planner benchmark that runs a number of single benchmarks.
  PlannerBenchmarkConfig | To read it from XML, use `PlannerBenchmarkConfig.createFromXmlResource(String)`.
  PlannerBenchmarkConfigIO |
  PlannerBenchmarkException | If at least one of the `SingleBenchmarkResult`s of a `PlannerBenchmark` fail, the `PlannerBenchmark` throws this exception after all `SingleBenchmarkResult`s are finished and the benchmark report has been written.
  PlannerBenchmarkFactory | Builds `PlannerBenchmark` instances.
  PlannerBenchmarkResult | Represents the benchmarks on multiple `Solver` configurations on multiple problem instances (data sets).
  PlanningEntity | Specifies that the class is a planning entity.
  PlanningEntity.NullDifficultyComparator | Workaround for annotation limitation in `PlanningEntity.difficultyComparatorClass()`.
  PlanningEntity.NullDifficultyWeightFactory | Workaround for annotation limitation in `PlanningEntity.difficultyWeightFactoryClass()`.
  PlanningEntity.NullPinningFilter | Workaround for annotation limitation in `PlanningEntity.pinningFilter()` ()}.
  PlanningEntityCollectionProperty | Specifies that a property (or a field) on a `PlanningSolution` class is a `Collection` of planning entities.
  PlanningEntityProperty | Specifies that a property (or a field) on a `PlanningSolution` class is a planning entity.
  PlanningId | Specifies that a bean property (or a field) is the id to match when `locating` an externalObject (often from another `Thread` or JVM).
  PlanningIdLookUpStrategy |
  PlanningPin | Specifies that a boolean property (or field) of a `PlanningEntity` determines if the planning entity is pinned.
  PlanningScore | Specifies that a property (or a field) on a `PlanningSolution` class holds the `Score` of that solution.
  PlanningScore.NullScoreDefinition | Workaround for annotation limitation in `PlanningScore.scoreDefinitionClass()`.
  PlanningSolution | Specifies that the class is a planning solution.
  PlanningSolution.NullSolutionCloner | Workaround for annotation limitation in `PlanningSolution.solutionCloner()`.
  PlanningVariable | Specifies that a bean property (or a field) can be changed and should be optimized by the optimization algorithms.
  PlanningVariable.NullStrengthComparator | Workaround for annotation limitation in `PlanningVariable.strengthComparatorClass()`.
  PlanningVariable.NullStrengthWeightFactory | Workaround for annotation limitation in `PlanningVariable.strengthWeightFactoryClass()`.
  PlanningVariableGraphType |
  PlanningVariableReference | A reference to a genuine `PlanningVariable` or a shadow variable.
  PlanningVariableReference.NullEntityClass | Workaround for annotation limitation in `PlanningVariableReference.entityClass()`.
  PolymorphicScoreJacksonDeserializer | Jackson binding support for a `Score` type (but not a subtype).
  PolymorphicScoreJacksonSerializer | Jackson binding support for a `Score` type (but not a subtype).
  PolymorphicScoreJaxbAdapter |
  PooledEntityPlacer<Solution_> |
  PooledEntityPlacerConfig |
  PooledEntityPlacerFactory<Solution_> |
  ProbabilityEntitySelector<Solution_> |
  ProbabilityMoveSelector<Solution_> |
  ProbabilityValueSelector<Solution_> |
  ProblemBasedSubSingleStatistic<Solution_,​StatisticPoint_ extends StatisticPoint> |
  ProblemBenchmarkResult<Solution_> | Represents 1 problem instance (data set) benchmarked on multiple `Solver` configurations.
  ProblemBenchmarksConfig |
  ProblemBenchmarksFactory |
  ProblemFactChange<Solution_> | A ProblemFactChange represents a change in 1 or more problem facts of a `PlanningSolution`.
  ProblemFactCollectionProperty | Specifies that a property (or a field) on a `PlanningSolution` class is a `Collection` of problem facts.
  ProblemFactProperty | Specifies that a property (or a field) on a `PlanningSolution` class is a problem fact.
  ProblemProvider<Solution_> | Subclasses need to implement `equals()` and `hashCode()` which are used by `ProblemBenchmarksFactory.buildProblemBenchmarkList(org.optaplanner.benchmark.impl.result.SolverBenchmarkResult, Solution_[])`.
  ProblemStatistic | 1 statistic of `ProblemBenchmarkResult`.
  ProblemStatisticType |
  PureSubSingleStatistic<Solution_,​StatisticPoint_ extends StatisticPoint> | 1 statistic of `SubSingleBenchmarkResult`.
  QuadConstraintCollector<A,​B,​C,​D,​ResultContainer_,​Result_> | Usually created with `ConstraintCollectors`.
  QuadConstraintStream<A,​B,​C,​D> | A `ConstraintStream` that matches four facts.
  QuadFunction<A,​B,​C,​D,​R> | Represents a function that accepts four arguments and produces a result.
  QuadJoiner<A,​B,​C,​D> | Created with `Joiners`.
  QuadLeftHandSide<A,​B,​C,​D> | Represents the left hand side of a Drools rule, the result of which are four variables.
  QuadPredicate<A,​B,​C,​D> | Represents a predicate (boolean-valued function) of four arguments.
  QuadTuple<A,​B,​C,​D> |
  QueuedEntityPlacer<Solution_> |
  QueuedEntityPlacerConfig |
  QueuedEntityPlacerFactory<Solution_> |
  QueuedValuePlacer<Solution_> |
  QueuedValuePlacerConfig |
  QueuedValuePlacerFactory<Solution_> |
  RandomFactory |
  RandomType | Defines the pseudo random number generator.
  RandomUtils |
  ReflectionBeanPropertyMemberAccessor | A `MemberAccessor` based on a getter and optionally a setter.
  ReflectionFieldMemberAccessor | A `MemberAccessor` based on a field.
  ReflectionHelper | Avoids the usage of Introspector to work on Android too.
  ReflectionMethodMemberAccessor | A `MemberAccessor` based on a single read `Method`.
  ReinitializeVariableValueSelector<Solution_> | Prevents reassigning of already initialized variables during Construction Heuristics and Exhaustive Search.
  ReportHelper |
  RuleAssembly |
  Score<Score_ extends Score<Score_>> | A Score is result of the score function (AKA fitness function) on a single possible solution.
  ScoreBounder |
  ScoreCalculationCountTermination<Solution_> |
  ScoreCalculationSpeedProblemStatistic |
  ScoreCalculationSpeedStatisticPoint |
  ScoreCalculationSpeedSubSingleStatistic<Solution_> |
  ScoreDefinition<Score_ extends Score<Score_>> | A ScoreDefinition knows how to compare `Score`s and what the perfect maximum/minimum `Score` is.
  ScoreDefinitionType |
  ScoreDifferencePercentage |
  ScoreDirector<Solution_> | The ScoreDirector holds the `working solution` and calculates the `Score` for it.
  ScoreDirectorFactory<Solution_> | Builds a `ScoreDirector`.
  ScoreDirectorFactoryConfig |
  ScoreDirectorFactoryFactory<Solution_,​Score_ extends Score<Score_>> |
  ScoreExplanation<Solution_,​Score_ extends Score<Score_>> | Build by `ScoreManager.explainScore(Object)` to hold `ConstraintMatchTotal`s and `Indictment`s necessary to explain the quality of a particular `Score`.
  ScoreFirstNodeComparator | Investigate the nodes with a better optimistic bound first, then deeper nodes.
  ScoreHolder<Score_ extends Score<Score_>> | This is the base interface for all score holder implementations, used exclusively by Drools-based score calculators.
  ScoreImpactType |
  ScoreInliner<Score_ extends Score<Score_>> |
  ScoreManager<Solution_,​Score_ extends Score<Score_>> | A stateless service to help calculate `Score`, `ConstraintMatchTotal`, `Indictment`, etc.
  ScoreSubSingleBenchmarkRankingComparator |
  ScoreUtils |
  SelectedCountLimitEntitySelector<Solution_> |
  SelectedCountLimitMoveSelector<Solution_> |
  SelectedCountLimitValueSelector<Solution_> |
  SelectionCacheLifecycleBridge<Solution_> |
  SelectionCacheLifecycleListener<Solution_> |
  SelectionCacheType | There is no INHERIT by design because 2 sequential caches provides no benefit, only memory overhead.
  SelectionFilter<Solution_,​T> | Decides on accepting or discarding a selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionIterator<S> |
  SelectionListIterator<S> |
  SelectionOrder | Defines in which order the elements or a selector are selected.
  SelectionProbabilityWeightFactory<Solution_,​T> | Create a probabilityWeight for a selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionSorter<Solution_,​T> | Decides the order of a `List` of selection (which is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  SelectionSorterOrder |
  SelectionSorterWeightFactory<Solution_,​T> | Creates a weight to decide the order of a collections of selections (a selection is a `PlanningEntity`, a planningValue, a `Move` or a `Selector`).
  Selector<Solution_> | General interface for `MoveSelector`, `EntitySelector` and `ValueSelector` which generates `Move`s or parts of them.
  SelectorConfig<Config_ extends SelectorConfig<Config_>> | General superclass for `MoveSelectorConfig`, `EntitySelectorConfig` and `ValueSelectorConfig`.
  SetupOperation<Solution_,​Score_ extends Score<Score_>> |
  ShadowVariableDescriptor<Solution_> |
  ShufflingEntitySelector<Solution_> |
  ShufflingMoveSelector<Solution_> |
  ShufflingValueSelector<Solution_> |
  SimpleBigDecimalScore | This `Score` is based on 1 level of `BigDecimal` constraints.
  SimpleBigDecimalScoreConverter |
  SimpleBigDecimalScoreDefinition |
  SimpleBigDecimalScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  SimpleBigDecimalScoreHolder |
  SimpleBigDecimalScoreHolderImpl |
  SimpleBigDecimalScoreInliner |
  SimpleBigDecimalScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  SimpleBigDecimalScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  SimpleBigDecimalScoreJaxbAdapter | JAXB binding support for a `Score` type.
  SimpleBigDecimalScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  SimpleBigDecimalScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `SimpleBigDecimalScore`.
  SimpleBigDecimalScoreXStreamConverter |
  SimpleLongScore | This `Score` is based on 1 level of long constraints.
  SimpleLongScoreConverter |
  SimpleLongScoreDefinition |
  SimpleLongScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  SimpleLongScoreHolder |
  SimpleLongScoreHolderImpl |
  SimpleLongScoreInliner |
  SimpleLongScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  SimpleLongScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  SimpleLongScoreJaxbAdapter | JAXB binding support for a `Score` type.
  SimpleLongScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  SimpleLongScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `SimpleLongScore`.
  SimpleLongScoreXStreamConverter |
  SimpleScore | This `Score` is based on 1 level of int constraints.
  SimpleScoreConverter |
  SimpleScoreDefinition |
  SimpleScoreHibernateType | This class is Hibernate specific, because JPA 2.1's @Converter currently cannot handle 1 class mapping to multiple SQL columns.
  SimpleScoreHolder |
  SimpleScoreHolderImpl |
  SimpleScoreInliner |
  SimpleScoreJacksonDeserializer | Jackson binding support for a `Score` type.
  SimpleScoreJacksonSerializer | Jackson binding support for a `Score` subtype.
  SimpleScoreJaxbAdapter | JAXB binding support for a `Score` type.
  SimpleScoreJsonbAdapter | JSON-B binding support for a `Score` type.
  SimpleScoreVerifier<Solution_> | To assert the constraints of a `SolverFactory` that uses a `SimpleScore`.
  SimpleScoreXStreamConverter |
  SimulatedAnnealingAcceptor<Solution_> | The time gradient implementation of simulated annealing.
  SingleBenchmarkResult | Represents 1 benchmark for 1 `Solver` configuration for 1 problem instance (data set).
  SingleBiJoiner<A,​B> |
  SingleConstraintAssertion |
  SingleConstraintVerification<Solution_> |
  SinglePentaJoiner<A,​B,​C,​D,​E> |
  SingleQuadJoiner<A,​B,​C,​D> |
  SingleStatisticType |
  SingletonInverseVariableDemand<Solution_> |
  SingletonInverseVariableListener<Solution_> |
  SingletonInverseVariableSupply | Currently only supported for chained variables, which guarantee that no 2 entities use the same planningValue.
  SingletonIterator<T> |
  SingleTriJoiner<A,​B,​C> |
  SmallScalingOrderedSet<E> | An ordered `Set` which is implemented as a `ArrayList` for a small `Set.size()` and a `LinkedHashSet` for a big `Set.size()`.
  SolutionCloner<Solution_> | Clones a `PlanningSolution` during planning.
  SolutionDescriptor<Solution_> |
  SolutionFileIO<Solution_> | Reads or writes a `PlanningSolution` from or to a `File`.
  SolutionPartitioner<Solution_> | Splits one `solution` into multiple partitions.
  Solver<Solution_> | A Solver solves a planning problem and returns the best solution found.
  SolverBenchmarkBluePrintConfig |
  SolverBenchmarkBluePrintType |
  SolverBenchmarkConfig |
  SolverBenchmarkFactory |
  SolverBenchmarkResult | Represents 1 `Solver` configuration benchmarked on multiple problem instances (data sets).
  SolverConfig | To read it from XML, use `SolverConfig.createFromXmlResource(String)`.
  SolverConfigIO |
  SolverEventListener<Solution_> |
  SolverEventSupport<Solution_> | Internal API.
  SolverFactory<Solution_> | Creates `Solver` instances.
  SolverJob<Solution_,​ProblemId_> | Represents a `problem` that has been submitted to solve on the `SolverManager`.
  SolverLifecycleListener<Solution_> |
  SolverLifecycleListenerAdapter<Solution_> | An adapter for `SolverLifecycleListener`.
  SolverManager<Solution_,​ProblemId_> | A SolverManager solves multiple planning problems of the same domain, asynchronously without blocking the calling thread.
  SolverManagerConfig |
  SolverRankingType |
  SolverRankingWeightFactory | Defines an interface for classes that will be used to rank solver benchmarks in order of their respective performance.
  SolverScope<Solution_> |
  SolverStatus | The status of `problem` submitted to the `SolverManager`.
  SortingEntitySelector<Solution_> |
  SortingMoveSelector<Solution_> |
  SortingValueSelector<Solution_> |
  SourcedVariableListener<Solution_,​Entity_> | Used to externalize data for a `Supply` from the domain model itself.
  StatisticPoint | Implementations must be immutable.
  StatisticType |
  StatisticUtils |
  StepCountingHillClimbingAcceptor<Solution_> |
  StepCountingHillClimbingType | Determines what increment the counter of Step Counting Hill Climbing.
  StepCountTermination<Solution_> |
  StepScoreProblemStatistic |
  StepScoreStatisticPoint |
  StepScoreSubSingleStatistic<Solution_> |
  StrategicOscillationByLevelFinalistPodium<Solution_> | Strategic oscillation, works well with Tabu search.
  SubChain | A subList out of a single chain.
  SubChainChangeMove<Solution_> |
  SubChainChangeMoveSelector<Solution_> |
  SubChainChangeMoveSelectorConfig |
  SubChainChangeMoveSelectorFactory<Solution_> |
  SubChainReversingChangeMove<Solution_> |
  SubChainReversingSwapMove<Solution_> | This `Move` is not cacheable.
  SubChainSelector<Solution_> |
  SubChainSelectorConfig |
  SubChainSelectorFactory<Solution_> |
  SubChainSwapMove<Solution_> | This `Move` is not cacheable.
  SubChainSwapMoveSelector<Solution_> |
  SubChainSwapMoveSelectorConfig |
  SubChainSwapMoveSelectorFactory<Solution_> |
  SubPillarConfigPolicy |
  SubPillarType |
  SubSingleBenchmarkRankBasedComparator |
  SubSingleBenchmarkResult | Represents 1 benchmark run for 1 Single Benchmark configuration for 1 `Solver` configuration for 1 problem instance (data set).
  SubSingleBenchmarkRunner<Solution_> |
  SubSingleStatistic<Solution_,​StatisticPoint_ extends StatisticPoint> | 1 statistic of `SubSingleBenchmarkResult`.
  Supply | Supplies something for 1 or multiple subsystems.
  SupplyManager<Solution_> | Provides a `Supply` for subsystems that submit a `Demand`.
  SwapMove<Solution_> |
  SwapMoveSelector<Solution_> |
  SwapMoveSelectorConfig |
  SwapMoveSelectorFactory<Solution_> |
  SwingUncaughtExceptionHandler |
  SwingUtils |
  TabuSizeStrategy<Solution_> |
  TailChainSwapMove<Solution_> | Also known as a 2-opt move.
  TailChainSwapMoveSelector<Solution_> | Also known as a 2-opt move selector.
  TailChainSwapMoveSelectorConfig | Also known as a 2-opt move selector config.
  TailChainSwapMoveSelectorFactory<Solution_> |
  TangoColorFactory |
  TemporalValueRange<Temporal_ extends Temporal & Comparable<? super Temporal_>> |
  Termination<Solution_> | A Termination determines when a `Solver` or a `Phase` should stop.
  TerminationCompositionStyle |
  TerminationConfig |
  TerminationFactory<Solution_> |
  TestGenCorruptedScoreException |
  TestGenCorruptedScoreReproducer | Detects corrupted score for the given journal.
  TestGenCorruptedVariableListenerReproducer | Detects variable listener corruption.
  TestGenDroolsExceptionReproducer | Reproduces the exception originally thrown by Drools during a call to KIE session.
  TestGenDroolsScoreDirector<Solution_,​Score_ extends Score<Score_>> |
  TestGenDroolsScoreDirectorFactory<Solution_,​Score_ extends Score<Score_>> |
  TestGenFact |
  TestGenFactField |
  TestGenHeadCuttingMutator<T> |
  TestGenInlineValue | Inline value is a value of a shadow variable.
  TestGenKieSessionDelete |
  TestGenKieSessionEventSupport |
  TestGenKieSessionFireAllRules |
  TestGenKieSessionInsert |
  TestGenKieSessionJournal |
  TestGenKieSessionListener |
  TestGenKieSessionOperation |
  TestGenKieSessionUpdate |
  TestGenNullFact |
  TestGenOriginalProblemReproducer |
  TestGenRemoveRandomBlockMutator<T> |
  TestGenValueFact |
  ThreadUtils |
  TimeMillisSpentTermination<Solution_> |
  ToIntQuadFunction<A,​B,​C,​D> | Represents a function that accepts four arguments and produces an int-valued result.
  ToIntTriFunction<A,​B,​C> | Represents a function that accepts three arguments and produces an int-valued result.
  ToLongQuadFunction<A,​B,​C,​D> | Represents a function that accepts four arguments and produces a long-valued result.
  ToLongTriFunction<A,​B,​C> | Represents a function that accepts three arguments and produces a long-valued result.
  TotalRankSolverRankingWeightFactory | This `SolverRankingWeightFactory` orders a `SolverBenchmarkResult` by how many times each of its `SingleBenchmarkResult`s beat `SingleBenchmarkResult`s of the other `SolverBenchmarkResult`.
  TotalRankSolverRankingWeightFactory.TotalRankSolverRankingWeight |
  TotalScoreSingleBenchmarkRankingComparator |
  TotalScoreSolverRankingComparator | This ranking `Comparator` orders a `SolverBenchmarkResult` by its total `Score`.
  TrendBasedScoreBounder |
  TriConstraintCollector<A,​B,​C,​ResultContainer_,​Result_> | Usually created with `ConstraintCollectors`.
  TriConstraintStream<A,​B,​C> | A `ConstraintStream` that matches three facts.
  TriConstraintStreamHelper<A,​B,​C,​D> |
  TriFunction<A,​B,​C,​R> | Represents a function that accepts three arguments and produces a result.
  TriJoiner<A,​B,​C> | Created with `Joiners`.
  TriLeftHandSide<A,​B,​C> | Represents the left hand side of a Drools rule, the result of which are three variables.
  TriPredicate<A,​B,​C> | Represents a predicate (boolean-valued function) of three arguments.
  TriTuple<A,​B,​C> |
  UndoScoreImpacter |
  UniConstraintCollector<A,​ResultContainer_,​Result_> | Usually created with `ConstraintCollectors`.
  UniConstraintStream<A> | A `ConstraintStream` that matches one fact.
  UniConstraintStreamHelper<A,​B> |
  UniLeftHandSide<A> | Represents the left-hand side of a Drools rule, the result of which is a single variable.
  UnimprovedStepCountTermination<Solution_> |
  UnimprovedTimeMillisSpentScoreDifferenceThresholdTermination<Solution_> |
  UnimprovedTimeMillisSpentTermination<Solution_> |
  UnionMoveSelector<Solution_> | A `CompositeMoveSelector` that unions 2 or more `MoveSelector`s.
  UnionMoveSelectorConfig |
  UnionMoveSelectorFactory<Solution_> |
  UpcomingSelectionIterator<S> | IMPORTANT: The constructor of any subclass of this abstract class, should never call any of its child `Selector`'s `Iterator.hasNext()` or `Iterator.next()` methods, because that can cause descendant `Selector`s to be selected too early (which breaks `MimicReplayingEntitySelector`).
  ValueMimicRecorder<Solution_> |
  ValueRange<T> | A ValueRange is a set of a values for a `PlanningVariable`.
  ValueRangeDescriptor<Solution_> |
  ValueRangeFactory | Factory for `ValueRange`.
  ValueRangeIterator<S> |
  ValueRangeProvider | Provides the planning values that can be used for a `PlanningVariable`.
  ValueRatioTabuSizeStrategy<Solution_> |
  ValueSelector<Solution_> | Selects values from the `ValueRangeProvider` for a `PlanningVariable` annotated property.
  ValueSelectorConfig |
  ValueSelectorFactory<Solution_> |
  ValueSorterManner | The manner of sorting a values for a `PlanningVariable`.
  ValueTabuAcceptor<Solution_> |
  VariableDescriptor<Solution_> |
  VariableListener<Solution_,​Entity_> | Changes shadow variables when a genuine planning variable changes.
  VariableListenerNotifiable |
  VariableListenerNotification |
  VariableListenerNotificationType |
  VariableListenerSupport<Solution_> |
  WebsiteResourceUtils |
  WeightedScoreImpacter |
  WeightFactorySelectionSorter<Solution_,​T> | Sorts a selection `List` based on a `SelectionSorterWeightFactory`.
  WorstScoreSolverRankingComparator | This ranking `Comparator` orders a `SolverBenchmarkResult` by its worst `Score`.
  XsdAggregator | This class merges solver.xsd and benchmark.xsd into a single XML Schema file that contains both Solver and Benchmark XML types under a single namespace of the benchmark.xsd.
  XStreamSolutionFileIO<Solution_> | Security warning: only use this class with XML files from a trusted source, because `XStream` is configured to allow all permissions, which can be exploited if the XML comes from an untrusted source.