Можно ли использовать жесткие и мягкие оценки ограничений в части последствий правила, но одно из них имеет ненулевое значение. например
scoreHolder.addHardConstraintMatch(kcontext, $weight * isHard);
scoreHolder.addSoftConstraintMatch(kcontext, $weight * isSoft);
где isHard / isSoft один из них равен 1, а другой равен нулю.
Вышеупомянутое всегда принимало значение последнего выполненного оператора (который является мягким ограничением)