Package | Description |
---|---|
org.cpsolver.studentsct |
Student Sectioning Solver.
|
org.cpsolver.studentsct.constraint |
Student Sectioning: Constraints.
|
org.cpsolver.studentsct.extension |
Student Sectioning: Various Extensions.
|
org.cpsolver.studentsct.model |
Student Sectioning: Model.
|
org.cpsolver.studentsct.online |
Online Student Sectioning Solver.
|
org.cpsolver.studentsct.online.expectations |
Student Sectioning Solver: Over-Expectation Criteria.
|
org.cpsolver.studentsct.online.selection |
Online Student Sectioning Solver: Selection Weights and Heuristics.
|
org.cpsolver.studentsct.report |
Student Sectioning: Various Reports.
|
org.cpsolver.studentsct.reservation |
Student Sectioning: Reservations.
|
Modifier and Type | Method and Description |
---|---|
protected Section |
StudentSectioningXMLLoader.loadSection(org.dom4j.Element sectionEl,
Subpart subpart,
Map<Long,Section> sectionTable,
Map<Long,Placement> timetable)
Load section
|
Modifier and Type | Method and Description |
---|---|
void |
StudentSectioningModel.addLinkedSections(Section... sections)
Link sections using
LinkedSections |
protected void |
StudentSectioningXMLSaver.saveSection(org.dom4j.Element sectionEl,
Section section)
Save section
|
Modifier and Type | Method and Description |
---|---|
void |
StudentSectioningModel.addLinkedSections(Collection<Section> sections)
Link sections using
LinkedSections |
protected Config |
StudentSectioningXMLLoader.loadConfig(org.dom4j.Element configEl,
Offering offering,
Map<Long,Subpart> subpartTable,
Map<Long,Section> sectionTable,
Map<Long,Placement> timetable)
Load config
|
protected Reservation |
StudentSectioningXMLLoader.loadReservation(org.dom4j.Element reservationEl,
Offering offering,
HashMap<Long,Config> configTable,
HashMap<Long,Section> sectionTable)
Load reservation
|
protected Section |
StudentSectioningXMLLoader.loadSection(org.dom4j.Element sectionEl,
Subpart subpart,
Map<Long,Section> sectionTable,
Map<Long,Placement> timetable)
Load section
|
protected Subpart |
StudentSectioningXMLLoader.loadSubpart(org.dom4j.Element subpartEl,
Config config,
Map<Long,Subpart> subpartTable,
Map<Long,Section> sectionTable,
Map<Long,Placement> timetable)
Load subpart
|
Modifier and Type | Method and Description |
---|---|
Set<Section> |
LinkedSections.getSections(Subpart subpart)
Return section (or sections) of a subpart of this link
|
Modifier and Type | Method and Description |
---|---|
static double |
SectionLimit.getEnrollmentWeight(Assignment<Request,Enrollment> assignment,
Section section,
Request request)
Enrollment weight of a section if the given request is assigned.
|
static double |
SectionLimit.getUnreservedSpace(Assignment<Request,Enrollment> assignment,
Section section,
Request request)
Remaining unreserved space in a section if the given request is assigned.
|
Constructor and Description |
---|
LinkedSections(Section... sections)
Constructor
|
Constructor and Description |
---|
LinkedSections(Collection<Section> sections)
Constructor
|
Modifier and Type | Method and Description |
---|---|
Section |
DistanceConflict.Conflict.getS1()
First section
|
Section |
DistanceConflict.Conflict.getS2()
Second section
|
Modifier and Type | Method and Description |
---|---|
boolean |
DistanceConflict.inConflict(Section s1,
Section s2)
Return true if the given two sections are in distance conflict.
|
Constructor and Description |
---|
DistanceConflict.Conflict(Student student,
Enrollment e1,
Section s1,
Enrollment e2,
Section s2)
Constructor
|
Modifier and Type | Method and Description |
---|---|
Section |
Section.getParent()
Parent section of this section (can be null).
|
Section |
Offering.getSection(long sectionId)
Return section of the given id, if it is part of one of this offering
configurations.
|
Section |
CourseRequest.getSection(long sectionId)
Return section of the requested courses with the given id
|
Modifier and Type | Method and Description |
---|---|
Set<Section> |
Choice.getParentSections()
List of parent sections of sections of the instructional offering which
represent this choice.
|
List<Section> |
Subpart.getSections()
List of sections
|
Set<Section> |
Enrollment.getSections()
List of sections (only for course request)
|
Set<Section> |
Choice.getSections()
List of sections of the instructional offering which represent this
choice.
|
Modifier and Type | Method and Description |
---|---|
int |
Section.compareTo(Assignment<Request,Enrollment> assignment,
Section s)
Compare two sections, prefer sections with lower penalty and more open
space
|
int |
Section.compareTo(Section s)
Compare two sections, prefer sections with lower penalty
|
double |
RequestGroup.getSectionSpread(Assignment<Request,Enrollment> assignment,
Section section)
Return section spread of this group.
|
double |
RequestGroup.RequestGroupContext.getSectionSpread(Section section)
Return section spread of this group.
|
double |
RequestGroup.getSectionWeight(Assignment<Request,Enrollment> assignment,
Section section,
Request excludeRequest)
Section weight -- weight of all requests which have an enrollment that
is of this request group and that includes the given section, excluding the given one.
|
double |
RequestGroup.RequestGroupContext.getSectionWeight(Assignment<Request,Enrollment> assignment,
Section section,
Request excludeRequest)
Section weight -- weight of all requests which have an enrollment that
is of this request group and that includes the given section, excluding the given one.
|
boolean |
CourseRequest.isSelected(Section section)
Return true when the given section is selected (i.e., its choice is among
selected choices)
|
boolean |
CourseRequest.isWaitlisted(Section section)
Return true when the given section is wait-listed (i.e., its choice is
among wait-listed choices)
|
boolean |
Section.sameTime(Section section)
True if the time assignment is the same
|
Constructor and Description |
---|
Section(long id,
int limit,
String name,
Subpart subpart,
Placement placement,
String instructorIds,
String instructorNames,
Section parent)
Constructor
|
Modifier and Type | Class and Description |
---|---|
class |
OnlineSection
An online section.
|
Modifier and Type | Method and Description |
---|---|
double |
OnlineSectioningModel.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request)
Expectation penalty, to be minimized (computed using
OverExpectedCriterion.getOverExpected(Assignment, Section, Request) ) |
Modifier and Type | Method and Description |
---|---|
protected Request |
Test.addRequest(Student student,
Student original,
Request request,
Map<Long,Section> classTable,
StudentSectioningModel model) |
protected Course |
Test.clone(Course course,
long studentId,
Student originalStudent,
Map<Long,Section> classTable,
StudentSectioningModel model) |
Constructor and Description |
---|
OnlineSection(long id,
int limit,
String name,
Subpart subpart,
Placement placement,
String instructorIds,
String instructorNames,
Section parent) |
Modifier and Type | Method and Description |
---|---|
protected double |
PercentageOverExpected.getEnrollment(Assignment<Request,Enrollment> assignment,
Section section,
Request request)
Section enrollment (using
OnlineSection.getEnrollment() if applicable}, getEnrollmentWeight(Assignment, Request) otherwise) |
protected int |
PercentageOverExpected.getLimit(Section section)
Section limit (using
OnlineSection.getEnrollment() if applicable}, getLimit() otherwise) |
double |
FractionallyOverExpected.getMaximum(Section section)
Maximum, section limit if not set
|
double |
FractionallyUnbalancedWhenNoExpectations.getMaximum(Section section,
double defaultValue)
Get maximum
|
double |
PercentageOverExpected.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
double |
PenaltyNotNegative.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
double |
OverExpectedCriterion.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request)
Expectation penalty, to be minimized
|
double |
NeverOverExpected.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
double |
FractionallyUnbalancedWhenNoExpectations.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
double |
FractionallyOverExpected.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
double |
AvoidUnbalancedWhenNoExpectations.getOverExpected(Assignment<Request,Enrollment> assignment,
Section section,
Request request) |
Modifier and Type | Field and Description |
---|---|
protected Hashtable<CourseRequest,Set<Section>> |
SuggestionSelection.iPreferredSections |
protected Hashtable<CourseRequest,Hashtable<Subpart,Section>> |
SuggestionSelection.iRequiredSection |
Modifier and Type | Method and Description |
---|---|
protected Set<Section> |
OnlineSectioningCriterion.getPreferredSections(Request request) |
Modifier and Type | Method and Description |
---|---|
int |
SuggestionsBranchAndBound.EnrollmentSectionComparator.compare(Section a,
Section b) |
int |
SuggestionsBranchAndBound.SectionAssignmentComparator.compare(Section a,
Section b) |
boolean |
SuggestionsBranchAndBound.EnrollmentSectionComparator.isParent(Section s1,
Section s2)
Is section s1 parent of section s2 (or a parent of a parent...)
|
boolean |
SuggestionsBranchAndBound.SuggestionFilter.match(Course course,
Section section)
Match the given section
|
static boolean |
ResectioningWeights.sameChoice(Section s,
Choice ch) |
static boolean |
ResectioningWeights.sameChoice(Section s,
String ch) |
boolean |
ResectioningWeights.LastSectionProvider.sameLastChoice(Section current)
Check the choice (see
Choice ) |
boolean |
ResectioningWeights.LastSectionProvider.sameLastName(Section current,
Course course)
Check section name (external id)
|
boolean |
ResectioningWeights.LastSectionProvider.sameLastRoom(Section current)
Check the room
|
boolean |
ResectioningWeights.LastSectionProvider.sameLastTime(Section current)
Check the time
|
static boolean |
ResectioningWeights.sameName(Long courseId,
Section s1,
Section s2) |
static boolean |
ResectioningWeights.sameRooms(Section s,
List<RoomLocation> rooms) |
static boolean |
ResectioningWeights.sameTime(Section s,
TimeLocation t) |
Modifier and Type | Method and Description |
---|---|
void |
SuggestionSelection.setPreferredSections(Hashtable<CourseRequest,Set<Section>> preferredSections) |
void |
OnlineSectioningSelection.setPreferredSections(Hashtable<CourseRequest,Set<Section>> preferredSections)
Set preferred sections
|
void |
MultiCriteriaBranchAndBoundSelection.setPreferredSections(Hashtable<CourseRequest,Set<Section>> preferredSections) |
void |
SuggestionSelection.setRequiredSections(Hashtable<CourseRequest,Set<Section>> requiredSections) |
void |
OnlineSectioningSelection.setRequiredSections(Hashtable<CourseRequest,Set<Section>> requiredSections)
Set required sections
|
void |
MultiCriteriaBranchAndBoundSelection.setRequiredSections(Hashtable<CourseRequest,Set<Section>> requiredSections) |
Constructor and Description |
---|
MultiCriteriaBranchAndBoundSuggestions(DataProperties properties,
Student student,
Assignment<Request,Enrollment> assignment,
Hashtable<CourseRequest,Set<Section>> requiredSections,
Set<FreeTimeRequest> requiredFreeTimes,
Hashtable<CourseRequest,Set<Section>> preferredSections,
Request selectedRequest,
Section selectedSection,
SuggestionsBranchAndBound.SuggestionFilter filter,
double maxSectionsWithPenalty,
boolean priorityWeighting)
Constructor
|
SuggestionsBranchAndBound(DataProperties properties,
Student student,
Assignment<Request,Enrollment> assignment,
Hashtable<CourseRequest,Set<Section>> requiredSections,
Set<FreeTimeRequest> requiredFreeTimes,
Hashtable<CourseRequest,Set<Section>> preferredSections,
Request selectedRequest,
Section selectedSection,
SuggestionsBranchAndBound.SuggestionFilter filter,
double maxSectionsWithPenalty)
Constructor
|
Modifier and Type | Method and Description |
---|---|
Section |
CourseSection.getSection()
Class
|
Constructor and Description |
---|
CourseSection(Course course,
Section section)
Constructor
|
Modifier and Type | Method and Description |
---|---|
Map<Subpart,Set<Section>> |
Reservation.getSections()
One or more sections on which the reservation is set (optional).
|
Set<Section> |
Reservation.getSections(Subpart subpart)
One or more sections on which the reservation is set (optional).
|
Modifier and Type | Method and Description |
---|---|
void |
Reservation.addSection(Section section)
Add a section (of the offering
Reservation.getOffering() ) to this reservation. |
Copyright © 2016 UniTime LLC. All Rights Reserved.