@Target(value=TYPE) @Retention(value=RUNTIME) public @interface PlanningEntity
PlanningVariable
property.
The class should have a public no-arg constructor, so it can be cloned
(unless the PlanningSolution.solutionCloner()
is specified).
Modifier and Type | Optional Element and Description |
---|---|
Class<? extends Comparator> |
difficultyComparatorClass
Allows a collection of planning entities to be sorted by difficulty.
|
Class<? extends SelectionSorterWeightFactory> |
difficultyWeightFactoryClass
The
SelectionSorterWeightFactory alternative for difficultyComparatorClass() . |
Class<? extends SelectionFilter> |
movableEntitySelectionFilter
Deprecated.
in favor of
pinningFilter() . |
Class<? extends PinningFilter> |
pinningFilter
A pinned planning entity is never changed during planning,
this is useful in repeated planning use cases (such as continuous planning and real-time planning).
|
@Deprecated public abstract Class<? extends SelectionFilter> movableEntitySelectionFilter
pinningFilter()
.This applies to all the planning variables of this planning entity. To pin individual variables, see https://issues.redhat.com/browse/PLANNER-124
The method SelectionFilter.accept(ScoreDirector, Object)
returns false
if the selection entity is pinned and it returns true if the selection entity is movable
PlanningEntity.NullMovableEntitySelectionFilter
when it is null (workaround for annotation limitation)public abstract Class<? extends PinningFilter> pinningFilter
This applies to all the planning variables of this planning entity. To pin individual variables, see https://issues.redhat.com/browse/PLANNER-124
The method PinningFilter.accept(Object, Object)
returns false if the selection entity is pinned
and it returns true if the selection entity is movable
PlanningEntity.NullPinningFilter
when it is null (workaround for annotation limitation)public abstract Class<? extends Comparator> difficultyComparatorClass
The Comparator
should sort in ascending difficulty
(even though many optimization algorithms will reverse it).
For example: sorting 3 processes on difficultly based on their RAM usage requirement:
Process B (1GB RAM), Process A (2GB RAM), Process C (7GB RAM),
Do not use together with difficultyWeightFactoryClass()
.
PlanningEntity.NullDifficultyComparator
when it is null (workaround for annotation limitation)difficultyWeightFactoryClass()
public abstract Class<? extends SelectionSorterWeightFactory> difficultyWeightFactoryClass
SelectionSorterWeightFactory
alternative for difficultyComparatorClass()
.
Do not use together with difficultyComparatorClass()
.
PlanningEntity.NullDifficultyWeightFactory
when it is null (workaround for annotation limitation)difficultyComparatorClass()
Copyright © 2006–2021 JBoss by Red Hat. All rights reserved.