timefold-solver
timefold-solver copied to clipboard
matchWeigher overload that returns a Score, so matches can affect the score level of the penality/reward
forEach(MyRule)
.join(Lesson, equal(MyRule.teacher, Lesson.teacher))
.filter(lesson.room == myRule.room)
.penalize((myRule, lesson) -> myRule.isHard() ? Score.ofHard(1) : Score.ofSoft(1))