public void penalize(RuleContext kcontext, BigDecimal hardWeightMultiplier, BigDecimal mediumWeightMultiplier, BigDecimal softWeightMultiplier) {
        reward(kcontext, hardWeightMultiplier.negate(), mediumWeightMultiplier.negate(), softWeightMultiplier.negate());
    }
public void penalize(RuleContext kcontext, BigDecimal hardWeightMultiplier, BigDecimal mediumWeightMultiplier, BigDecimal softWeightMultiplier) {
        reward(kcontext, hardWeightMultiplier.negate(), mediumWeightMultiplier.negate(), softWeightMultiplier.negate());
    }
public void penalize ( RuleContext kcontext , BigDecimal hardWeightMultiplier , BigDecimal mediumWeightMultiplier , BigDecimal softWeightMultiplier ) { reward ( kcontext , hardWeightMultiplier . negate ( ) , mediumWeightMultiplier . negate ( ) , softWeightMultiplier . negate ( ) ) ; }
Penalize a match by the {@link ConstraintWeight} negated and multiplied with the specific weightMultiplier per score level.
Slower than {@link #penalize(RuleContext, BigDecimal)}.
@param kcontext never null, the magic variable in DRL
@param hardWeightMultiplier at least 0
@param mediumWeightMultiplier at least 0
@param softWeightMultiplier at least 0
Penalize a match by the {