public class SctSectioning extends DefaultStudentSectioning implements InfoProvider<Lecture,Placement>
| Modifier and Type | Class and Description |
|---|---|
protected static class |
SctSectioning.GroupBasedInitialSectioning |
iFinalSectioning, iModel, iMustFollowReservations, sDF2| Constructor and Description |
|---|
SctSectioning(TimetableModel model) |
| Modifier and Type | Method and Description |
|---|---|
protected List<StudentConflict> |
getStudentConflictCriteria()
List of student conflict criteria
|
boolean |
hasFinalSectioning()
Return true if final student sectioning is implemented.
|
protected boolean |
hasStudentGroups(Collection<Student> students) |
void |
resection(Assignment<Lecture,Placement> assignment,
Lecture lecture,
boolean recursive,
boolean configAsWell)
Perform sectioning on the given lecture
|
protected InitialSectioning.Group[] |
studentsToConfigurations(Long offeringId,
Collection<Student> students,
Collection<Configuration> configurations)
Section students into configurations.
|
protected InitialSectioning.Group[] |
studentsToLectures(Long offeringId,
Collection<Student> students,
Collection<Lecture> lectures)
Section students into lectures.
|
void |
switchStudents(Solution<Lecture,Placement> solution,
TerminationCondition<Lecture,Placement> termination)
Run student final sectioning (switching students between sections of the same
class in order to minimize overall number of student conflicts).
|
protected double |
value(Solution<Lecture,Placement> solution)
Student conflict weight for the given solution
|
getClassLabel, getInfo, getInfo, getProgress, initialSectioning, initialSectioningLectures, isMustFollowReservations, setMustFollowReservationsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetInfo, getInfopublic SctSectioning(TimetableModel model)
public boolean hasFinalSectioning()
DefaultStudentSectioninghasFinalSectioning in interface StudentSectioninghasFinalSectioning in class DefaultStudentSectioningprotected List<StudentConflict> getStudentConflictCriteria()
protected double value(Solution<Lecture,Placement> solution)
public void switchStudents(Solution<Lecture,Placement> solution, TerminationCondition<Lecture,Placement> termination)
DefaultStudentSectioningswitchStudents in interface StudentSectioningswitchStudents in class DefaultStudentSectioningsolution - current solutiontermination - termination condition (optional)public void resection(Assignment<Lecture,Placement> assignment, Lecture lecture, boolean recursive, boolean configAsWell)
DefaultStudentSectioningresection in interface StudentSectioningresection in class DefaultStudentSectioningassignment - current assignmentlecture - given lecturerecursive - recursively resection lectures affected by a student swapconfigAsWell - resection students between configurations as wellprotected boolean hasStudentGroups(Collection<Student> students)
protected InitialSectioning.Group[] studentsToConfigurations(Long offeringId, Collection<Student> students, Collection<Configuration> configurations)
DefaultStudentSectioningInitialSectioning.getGroups().studentsToConfigurations in class DefaultStudentSectioningofferingId - instructional offering idstudents - list of students to be sectionedconfigurations - list of configurations the students are to be sectioned intoInitialSectioning.Groupprotected InitialSectioning.Group[] studentsToLectures(Long offeringId, Collection<Student> students, Collection<Lecture> lectures)
DefaultStudentSectioningInitialSectioning.getGroups().studentsToLectures in class DefaultStudentSectioningofferingId - instructional offering idstudents - list of students to be sectionedlectures - list of lectures the students are to be sectioned intoInitialSectioning.Group