protected class ExamSplitMoves.ExamSplitNeighbour extends Object implements Neighbour<Exam,ExamPlacement>
Constructor and Description |
---|
ExamSplitNeighbour(Assignment<Exam,ExamPlacement> assignment,
Exam exam,
ExamPlacement placement)
Split an exam into two, assign the new exam into the given placement.
|
Modifier and Type | Method and Description |
---|---|
void |
assign(Assignment<Exam,ExamPlacement> assignment,
long iteration)
Perform the split.
|
Map<Exam,ExamPlacement> |
assignments()
Return assignments to be done.
|
Exam |
exam()
Exam to be split.
|
int |
nrStudents()
Number of students that will be moved into the new exam.
|
ExamPlacement |
placement()
Placement of the new exam.
|
double |
value(Assignment<Exam,ExamPlacement> assignment)
Value of the split.
|
public ExamSplitNeighbour(Assignment<Exam,ExamPlacement> assignment, Exam exam, ExamPlacement placement)
assignment
- current assignmentexam
- an exam to be splitplacement
- a placement to be assigned to the new exampublic void assign(Assignment<Exam,ExamPlacement> assignment, long iteration)
assign
in interface Neighbour<Exam,ExamPlacement>
assignment
- current assignmentiteration
- current iterationpublic double value(Assignment<Exam,ExamPlacement> assignment)
value
in interface Neighbour<Exam,ExamPlacement>
assignment
- current assignmentpublic int nrStudents()
public ExamPlacement placement()
public Map<Exam,ExamPlacement> assignments()
Neighbour
assignments
in interface Neighbour<Exam,ExamPlacement>