org.optaplanner.core.impl.score.buildin.hardmediumsoft
public class HardMediumSoftScoreDefinition extends AbstractScoreDefinition<HardMediumSoftScore>
Constructor and Description |
---|
HardMediumSoftScoreDefinition() |
Modifier and Type | Method and Description |
---|---|
ScoreHolder |
buildScoreHolder(boolean constraintMatchEnabled) |
double |
calculateTimeGradient(HardMediumSoftScore startScore,
HardMediumSoftScore endScore,
HardMediumSoftScore score)
See explanation in
Termination.calculateSolverTimeGradient(DefaultSolverScope) . |
double |
getHardScoreTimeGradientWeight() |
double |
getMediumScoreTimeGradientWeight() |
HardMediumSoftScore |
getPerfectMaximumScore()
|
HardMediumSoftScore |
getPerfectMinimumScore()
|
Class<HardMediumSoftScore> |
getScoreClass()
|
Score |
parseScore(String scoreString)
|
void |
setHardScoreTimeGradientWeight(double hardScoreTimeGradientWeight)
It's recommended to use a number which can be exactly represented as a double,
such as 0.5, 0.25, 0.75, 0.125, ... but not 0.1, 0.2, ...
|
void |
setMediumScoreTimeGradientWeight(double mediumScoreTimeGradientWeight)
It's recommended to use a number which can be exactly represented as a double,
such as 0.5, 0.25, 0.75, 0.125, ... but not 0.1, 0.2, ...
|
void |
setPerfectMaximumScore(HardMediumSoftScore perfectMaximumScore) |
void |
setPerfectMinimumScore(HardMediumSoftScore perfectMinimumScore) |
formatScore
public double getHardScoreTimeGradientWeight()
public void setHardScoreTimeGradientWeight(double hardScoreTimeGradientWeight)
hardScoreTimeGradientWeight
- 0.0 <= hardScoreTimeGradientWeight <= 1.0public double getMediumScoreTimeGradientWeight()
public void setMediumScoreTimeGradientWeight(double mediumScoreTimeGradientWeight)
mediumScoreTimeGradientWeight
- 0.0 <= hardScoreTimeGradientWeight <= 1.0public HardMediumSoftScore getPerfectMaximumScore()
ScoreDefinition
Score
is the Score
of which there is no better in any problem instance.
This doesn't mean that the current problem instance, or any problem instance for that matter,
could ever attain that Score
.
For example, most cases have a perfect maximum Score
of zero, as most use cases only have negative
constraints.getPerfectMaximumScore
in interface ScoreDefinition<HardMediumSoftScore>
getPerfectMaximumScore
in class AbstractScoreDefinition<HardMediumSoftScore>
public void setPerfectMaximumScore(HardMediumSoftScore perfectMaximumScore)
public HardMediumSoftScore getPerfectMinimumScore()
ScoreDefinition
Score
is the Score
of which there is no worse in any problem instance.
This doesn't mean that the current problem instance, or any problem instance for that matter,
could ever attain such a bad Score
.
For example, most cases have a perfect minimum Score
of negative infinity.getPerfectMinimumScore
in interface ScoreDefinition<HardMediumSoftScore>
getPerfectMinimumScore
in class AbstractScoreDefinition<HardMediumSoftScore>
public void setPerfectMinimumScore(HardMediumSoftScore perfectMinimumScore)
public Class<HardMediumSoftScore> getScoreClass()
ScoreDefinition
public Score parseScore(String scoreString)
ScoreDefinition
scoreString
- never nullScoreDefinition.formatScore(Score)
public double calculateTimeGradient(HardMediumSoftScore startScore, HardMediumSoftScore endScore, HardMediumSoftScore score)
ScoreDefinition
Termination.calculateSolverTimeGradient(DefaultSolverScope)
.startScore
- never nullendScore
- never nullscore
- never nullpublic ScoreHolder buildScoreHolder(boolean constraintMatchEnabled)
constraintMatchEnabled
- true if ScoreHolder.isConstraintMatchEnabled()
should be trueCopyright © 2006-2013 JBoss by Red Hat. All Rights Reserved.