Interface MoveStreamFactory<Solution_>
- All Known Implementing Classes:
DefaultMoveStreamFactory
@NullMarked
public interface MoveStreamFactory<Solution_>
-
Method Summary
Modifier and TypeMethodDescription<A> UniDataStream<Solution_,A> Start aConstraintStreamof all instances of the sourceClass that are known asproblem factsorplanning entities.<A> UniDataStream<Solution_,A> enumerateIncludingPinned(Class<A> sourceClass) Start aConstraintStreamof all instances of the sourceClass that are known asproblem factsorplanning entities.default <Entity_,A>
UniDataStream<Solution_,A> enumeratePossiblePositions(PlanningListVariableMetaModel<Solution_, Entity_, A> variableMetaModel) <Entity_,A>
UniDataStream<Solution_,A> enumeratePossibleValues(PlanningVariableMetaModel<Solution_, Entity_, A> variableMetaModel) Enumerate possible values for a given basic variable.<A> UniMoveStream<Solution_,A> pick(UniDataStream<Solution_, A> dataStream) default <A> UniMoveStream<Solution_,A>
-
Method Details
-
enumerate
Start aConstraintStreamof all instances of the sourceClass that are known asproblem factsorplanning entities.If the sourceClass is a
PlanningEntity, then it is automaticallyfilteredto only contain entities which are pinned.If the sourceClass is a shadow entity (an entity without any genuine planning variables), and if there exists a genuine
PlanningEntitywith aPlanningListVariablewhich accepts instances of this shadow entity as values in that list, then this stream will filter out all sourceClass instances which are pinned in that list.This stream returns genuine entities regardless of whether they have any null genuine planning variables. This stream returns shadow entities regardless of whether they are assigned to any genuine entity. They can easily be
filtered out.- Returns:
- A stream containing a tuple for each of the entities as described above.
- See Also:
-
enumerateIncludingPinned
Start aConstraintStreamof all instances of the sourceClass that are known asproblem factsorplanning entities. If the sourceClass is a genuine or shadow entity, it returns instances regardless of their pinning status. Otherwise as defined byenumerate(Class). -
enumeratePossibleValues
<Entity_,A> UniDataStream<Solution_,A> enumeratePossibleValues(PlanningVariableMetaModel<Solution_, Entity_, A> variableMetaModel) Enumerate possible values for a given basic variable. If the variable allows unassigned values, the resulting stream will include a null value.- Returns:
- data stream with all possible values of a given variable
- Throws:
UnsupportedOperationException- If the variable in question is a list variable, or if the basic variable is chained.- See Also:
-
enumeratePossiblePositions
default <Entity_,A> UniDataStream<Solution_,A> enumeratePossiblePositions(PlanningListVariableMetaModel<Solution_, Entity_, A> variableMetaModel) -
pick
-
pick
-