Package | Description |
---|---|
org.cpsolver.exam.heuristics |
Examination Timetabling: Solution Heuristics.
|
org.cpsolver.exam.model |
Examination Timetabling: Model.
|
org.cpsolver.exam.neighbours |
Examination Timetabling: Various Neighbourhoods.
|
org.cpsolver.exam.reports |
Examination Timetabling: Reports.
|
org.cpsolver.exam.split |
This package contains an an experimental criterion that allows an exam to be split into two if it decreases the number of student conflicts.
|
Modifier and Type | Method and Description |
---|---|
Set<ExamRoomPlacement> |
ExamColoringConstruction.findRooms(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamPeriodPlacement period) |
Modifier and Type | Method and Description |
---|---|
ExamRoomPlacement |
Exam.getRoomPlacement(ExamRoom room)
Returns appropriate
ExamRoomPlacement for the given room, if it
is available for this exam, null otherwise. |
ExamRoomPlacement |
Exam.getRoomPlacement(long roomId)
Returns appropriate
ExamRoomPlacement for the given room, if it
is available for this exam, null otherwise. |
Modifier and Type | Method and Description |
---|---|
Set<ExamRoomPlacement> |
Exam.findBestAvailableRooms(Assignment<Exam,ExamPlacement> assignment,
ExamPeriodPlacement period)
Find best available rooms for the exam in the given period.
|
Set<ExamRoomPlacement> |
Exam.findRoomsRandom(Assignment<Exam,ExamPlacement> assignment,
ExamPeriodPlacement period)
Randomly find a set of available rooms for the exam in the given period.
|
Set<ExamRoomPlacement> |
Exam.findRoomsRandom(Assignment<Exam,ExamPlacement> assignment,
ExamPeriodPlacement period,
boolean checkConflicts)
Randomly find a set of available rooms for the exam in the given period.
|
List<ExamRoomPlacement> |
Exam.getPreferredRoomPlacements()
Return list of possible room placements that are strongly preferred.
|
List<ExamRoomPlacement> |
Exam.getRoomPlacements()
Return list of possible room placements.
|
Set<ExamRoomPlacement> |
ExamPlacement.getRoomPlacements()
Assigned rooms (it is empty when
Exam.getMaxRooms() is zero) |
Modifier and Type | Method and Description |
---|---|
int |
ExamRoomPlacement.compareTo(ExamRoomPlacement o)
Compare two room placements
|
double |
ExamRoomPlacement.getDistanceInMeters(ExamRoomPlacement other)
Room distance
|
int |
Exam.getDistributionConstraintPenalty(Assignment<Exam,ExamPlacement> assignment,
ExamRoomPlacement room)
Check all soft distribution constraint that this exam is involved in
|
boolean |
Exam.checkDistributionConstraints(Assignment<Exam,ExamPlacement> assignment,
ExamRoomPlacement room)
Check all distribution constraint that this exam is involved in
|
Constructor and Description |
---|
Exam(long id,
String name,
int length,
boolean altSeating,
int maxRooms,
int minSize,
List<ExamPeriodPlacement> periodPlacements,
List<ExamRoomPlacement> roomPlacements)
Constructor
|
ExamPlacement(Exam exam,
ExamPeriodPlacement periodPlacement,
Set<ExamRoomPlacement> roomPlacements)
Constructor
|
Modifier and Type | Method and Description |
---|---|
Set<ExamRoomPlacement> |
ExamPeriodSwapMove.findBestAvailableRooms(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamPeriodPlacement period,
Set<ExamPlacement> conflictsToIgnore,
Map<Exam,ExamPlacement> placements) |
Modifier and Type | Method and Description |
---|---|
int |
ExamPeriodSwapMove.getDistributionConstraintPenalty(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamRoomPlacement room,
Set<ExamPlacement> conflictsToIgnore,
Map<Exam,ExamPlacement> placements) |
boolean |
ExamPeriodSwapMove.checkDistributionConstraints(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamRoomPlacement room,
Set<ExamPlacement> conflictsToIgnore,
Map<Exam,ExamPlacement> placements) |
Constructor and Description |
---|
ExamRoomSwapNeighbour(Assignment<Exam,ExamPlacement> assignment,
ExamPlacement placement,
ExamRoomPlacement current,
ExamRoomPlacement swap) |
Modifier and Type | Method and Description |
---|---|
int |
ExamRoomComparator.compare(ExamRoomPlacement r1,
ExamRoomPlacement r2)
Compare two rooms based on their normal/alternative seating size
|
Modifier and Type | Method and Description |
---|---|
Set<ExamRoomPlacement> |
ExamSplitMoves.findBestAvailableRooms(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamPeriodPlacement period,
int examSize)
Find best available rooms for a new exam (that is to be split from the given one),
if is is assigned into the given examination period.
|