以课程安排为例,一位讲师只能教授n门课程。为了实现这一点,我的想法是查找给定讲师正在教授的所有课程,并通过负差将不良率增加,如果低于,则减少一半。我将如何去做(得到指定教授教授的所有课程)?
答案 0 :(得分:1)
如果您引入了List<Course> courseList
双向变量(在Instructor类中的6.2. Bi-directional Variable (Inverse Relation Shadow Variable)节中,则可以访问他的所有课程:
@PlanningEntity
public class Course {
@PlanningVariable(valueRangeProviderRefs = {"instructorRange"})
private Instructor instructor;
}
@PlanningEntity
public class Instructor {
@InverseRelationShadowVariable(sourceVariableName = "instructor")
private List<Course> courseList;
}
关于得分,当教练分配的课程过多时,对硬分数进行处罚,而当课程数量不足时,对软分数进行处罚。