|
2 | 2 |
|
3 | 3 | import ai.timefold.solver.core.api.domain.entity.PlanningEntity;
|
4 | 4 | import ai.timefold.solver.core.api.domain.solution.PlanningSolution;
|
| 5 | +import ai.timefold.solver.core.config.constructionheuristic.ConstructionHeuristicPhaseConfig; |
| 6 | +import ai.timefold.solver.core.config.heuristic.selector.entity.EntitySelectorConfig; |
| 7 | +import ai.timefold.solver.core.config.heuristic.selector.value.ValueSelectorConfig; |
5 | 8 | import ai.timefold.solver.core.impl.heuristic.move.Move;
|
6 | 9 | import ai.timefold.solver.core.impl.heuristic.selector.Selector;
|
7 | 10 |
|
|
12 | 15 | * (a selection is a {@link PlanningEntity}, a planningValue, a {@link Move} or a {@link Selector}).
|
13 | 16 | * The selections are then sorted by their weight,
|
14 | 17 | * normally ascending unless it's configured descending.
|
15 |
| - * |
| 18 | + * The property {@code sortManner}, |
| 19 | + * present in the selector configurations such as {@link ValueSelectorConfig} and {@link EntitySelectorConfig}, |
| 20 | + * specifies how the data will be sorted. |
| 21 | + * Additionally, |
| 22 | + * the property {@code constructionHeuristicType} from {@link ConstructionHeuristicPhaseConfig} can also configure how entities |
| 23 | + * and values are sorted. |
16 | 24 | * <p>
|
17 | 25 | * Implementations are expected to be stateless.
|
18 | 26 | * The solver may choose to reuse instances.
|
19 | 27 | *
|
20 | 28 | * @param <Solution_> the solution type, the class with the {@link PlanningSolution} annotation
|
21 | 29 | * @param <T> the selection type
|
| 30 | + * |
| 31 | + * @see ValueSelectorConfig |
| 32 | + * @see EntitySelectorConfig |
| 33 | + * @see ConstructionHeuristicPhaseConfig |
22 | 34 | */
|
23 | 35 | @NullMarked
|
24 | 36 | @FunctionalInterface
|
|
0 commit comments