Interface SolutionPartitioner<Solution_>
- Type Parameters:
Solution_
- the solution type, the class with thePlanningSolution
annotation
public interface SolutionPartitioner<Solution_>
Splits one
solution
into multiple partitions.
The partitions are solved and merged based on the PlanningSolution.lookUpStrategyType()
.
To add custom properties, configure custom properties and add public setters for them.
-
Method Summary
Modifier and TypeMethodDescriptionsplitWorkingSolution
(ScoreDirector<Solution_> scoreDirector, Integer runnablePartThreadLimit) Returns a list of partition clonedsolutions
for which eachplanning entity
is partition cloned into exactly 1 of those partitions.
-
Method Details
-
splitWorkingSolution
List<Solution_> splitWorkingSolution(ScoreDirector<Solution_> scoreDirector, Integer runnablePartThreadLimit) Returns a list of partition clonedsolutions
for which eachplanning entity
is partition cloned into exactly 1 of those partitions. Problem facts can be multiple partitions (with our without cloning).Any class that is
solution cloned
must also be partitioned cloned. A class can be partition cloned without being solution cloned.- Parameters:
scoreDirector
- never null, theScoreDirector
which has theScoreDirector.getWorkingSolution()
that needs to be split uprunnablePartThreadLimit
- null if unlimited, never negative- Returns:
- never null,
List.size()
of at least 1.
-