public class HardSoftBigDecimalScoreHolder extends AbstractScoreHolder<HardSoftBigDecimalScore>
HardSoftBigDecimalScore,
Serialized FormAbstractScoreHolder.ConstraintActivationUnMatchListener| Modifier and Type | Field and Description |
|---|---|
protected BigDecimal |
hardScore |
protected Map<org.kie.api.definition.rule.Rule,BiConsumer<org.kie.api.runtime.rule.RuleContext,BigDecimal>> |
matchExecutorByNumberMap |
protected Map<org.kie.api.definition.rule.Rule,BiConsumer<org.kie.api.runtime.rule.RuleContext,HardSoftBigDecimalScore>> |
matchExecutorByScoreMap
Slower than
matchExecutorByNumberMap |
protected BigDecimal |
softScore |
constraintMatchEnabled, constraintMatchTotalMap, indictmentMap, zeroScore| Constructor and Description |
|---|
HardSoftBigDecimalScoreHolder(boolean constraintMatchEnabled) |
| Modifier and Type | Method and Description |
|---|---|
void |
addHardConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeight) |
void |
addMultiConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeight,
BigDecimal softWeight) |
void |
addSoftConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal softWeight) |
void |
configureConstraintWeight(org.kie.api.definition.rule.Rule rule,
HardSoftBigDecimalScore constraintWeight)
Sets up a
ConstraintWeight from the ConstraintConfiguration during initialization. |
HardSoftBigDecimalScore |
extractScore(int initScore)
|
BigDecimal |
getHardScore() |
BigDecimal |
getSoftScore() |
void |
impactScore(org.kie.api.runtime.rule.RuleContext kcontext)
For internal use only, use penalize() or reward() instead.
|
void |
impactScore(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
For internal use only, use penalize() or reward() instead.
|
void |
penalize(org.kie.api.runtime.rule.RuleContext kcontext)
Penalize a match by the
ConstraintWeight negated. |
void |
penalize(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
Penalize a match by the
ConstraintWeight negated and multiplied with the weightMultiplier for all score levels. |
void |
penalize(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeightMultiplier,
BigDecimal softWeightMultiplier)
Penalize a match by the
ConstraintWeight negated and multiplied with the specific weightMultiplier per score
level. |
void |
reward(org.kie.api.runtime.rule.RuleContext kcontext)
Reward a match by the
ConstraintWeight. |
void |
reward(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
Reward a match by the
ConstraintWeight multiplied with the weightMultiplier for all score levels. |
void |
reward(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeightMultiplier,
BigDecimal softWeightMultiplier)
Reward a match by the
ConstraintWeight multiplied with the specific weightMultiplier per score level. |
extractJustificationList, getConstraintMatchTotalMap, getConstraintMatchTotals, getIndictmentMap, impactScore, impactScore, isConstraintMatchEnabled, registerConstraintMatch, setJustificationListConverterprotected final Map<org.kie.api.definition.rule.Rule,BiConsumer<org.kie.api.runtime.rule.RuleContext,BigDecimal>> matchExecutorByNumberMap
protected final Map<org.kie.api.definition.rule.Rule,BiConsumer<org.kie.api.runtime.rule.RuleContext,HardSoftBigDecimalScore>> matchExecutorByScoreMap
matchExecutorByNumberMapprotected BigDecimal hardScore
protected BigDecimal softScore
public HardSoftBigDecimalScoreHolder(boolean constraintMatchEnabled)
public BigDecimal getHardScore()
public BigDecimal getSoftScore()
public void configureConstraintWeight(org.kie.api.definition.rule.Rule rule,
HardSoftBigDecimalScore constraintWeight)
ScoreHolderConstraintWeight from the ConstraintConfiguration during initialization.configureConstraintWeight in interface ScoreHolder<HardSoftBigDecimalScore>configureConstraintWeight in class AbstractScoreHolder<HardSoftBigDecimalScore>rule - never nullconstraintWeight - never null, with Score.getInitScore() equal to 0.public void penalize(org.kie.api.runtime.rule.RuleContext kcontext)
ConstraintWeight negated.kcontext - never null, the magic variable in DRLpublic void penalize(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
ConstraintWeight negated and multiplied with the weightMultiplier for all score levels.kcontext - never null, the magic variable in DRLweightMultiplier - at least 0public void penalize(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeightMultiplier,
BigDecimal softWeightMultiplier)
ConstraintWeight negated and multiplied with the specific weightMultiplier per score
level.
Slower than penalize(RuleContext, BigDecimal).kcontext - never null, the magic variable in DRLhardWeightMultiplier - at least 0softWeightMultiplier - at least 0public void reward(org.kie.api.runtime.rule.RuleContext kcontext)
ConstraintWeight.kcontext - never null, the magic variable in DRLpublic void reward(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
ConstraintWeight multiplied with the weightMultiplier for all score levels.kcontext - never null, the magic variable in DRLweightMultiplier - at least 0public void reward(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeightMultiplier,
BigDecimal softWeightMultiplier)
ConstraintWeight multiplied with the specific weightMultiplier per score level.
Slower than reward(RuleContext, BigDecimal).kcontext - never null, the magic variable in DRLhardWeightMultiplier - at least 0softWeightMultiplier - at least 0public void impactScore(org.kie.api.runtime.rule.RuleContext kcontext)
AbstractScoreHolderimpactScore in class AbstractScoreHolder<HardSoftBigDecimalScore>kcontext - never nullpublic void impactScore(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal weightMultiplier)
AbstractScoreHolderimpactScore in class AbstractScoreHolder<HardSoftBigDecimalScore>kcontext - never nullweightMultiplier - anypublic void addHardConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeight)
kcontext - never null, the magic variable in DRLhardWeight - never null, higher is better, negative for a penalty, positive for a rewardpublic void addSoftConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal softWeight)
kcontext - never null, the magic variable in DRLsoftWeight - never null, higher is better, negative for a penalty, positive for a rewardpublic void addMultiConstraintMatch(org.kie.api.runtime.rule.RuleContext kcontext,
BigDecimal hardWeight,
BigDecimal softWeight)
kcontext - never null, the magic variable in DRLhardWeight - never null, higher is better, negative for a penalty, positive for a rewardsoftWeight - never null, higher is better, negative for a penalty, positive for a rewardpublic HardSoftBigDecimalScore extractScore(int initScore)
ScoreHolderScore, calculated by the KieSession for DroolsScoreDirector.
Should not be called directly, use ScoreDirector.calculateScore() instead.
initScore - <= 0, managed by OptaPlanner, needed as a parameter in the Score's creation
method, see Score.getInitScore()Score of the working PlanningSolutionCopyright © 2006–2021 JBoss by Red Hat. All rights reserved.