|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.cpsolver.coursett.model.OnFlySectioning
public class OnFlySectioning
On fly student sectioning.
In this mode, students are resectioned after each iteration, but only between classes that are affected by the iteration.
This slows down the solver, but it can dramatically improve results in the case when there is more stress put on student conflicts (e.g., Woebegon College example).
Parameters:
Parameter | Type | Comment |
---|---|---|
OnFlySectioning.Enabled | Boolean | Enable on fly sectioning (if enabled, students will be resectioned after each iteration) |
OnFlySectioning.Recursive | Boolean | Recursively resection lectures affected by a student swap |
OnFlySectioning.ConfigAsWell | Boolean | Resection students between configurations as well |
Constructor Summary | |
---|---|
OnFlySectioning(TimetableModel model)
Constructor |
Method Summary | |
---|---|
void |
afterAssigned(long iteration,
Value value)
FinalSectioning.resection(Lecture, boolean, boolean) is called when given iteration number
is greater than zero. |
void |
afterUnassigned(long iteration,
Value value)
Called after a value is unassigned from its variable ( Value.variable() ). |
void |
beforeAssigned(long iteration,
Value value)
Called before a value is assigned to its variable ( Value.variable() ). |
void |
beforeUnassigned(long iteration,
Value value)
Called before a value is unassigned from its variable ( Value.variable() ). |
void |
constraintAdded(Constraint constraint)
Constraint is added to the model |
void |
constraintRemoved(Constraint constraint)
Constraint is removed from the model |
boolean |
init(Solver solver)
Initialization |
void |
variableAdded(Variable variable)
Variable is added to the model |
void |
variableRemoved(Variable variable)
Variable is removed from the model |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public OnFlySectioning(TimetableModel model)
model
- timetabling modelMethod Detail |
---|
public void variableAdded(Variable variable)
ModelListener
variableAdded
in interface ModelListener
variable
- added variablepublic void variableRemoved(Variable variable)
ModelListener
variableRemoved
in interface ModelListener
variable
- removed variablepublic void constraintAdded(Constraint constraint)
ModelListener
constraintAdded
in interface ModelListener
constraint
- added constraintpublic void constraintRemoved(Constraint constraint)
ModelListener
constraintRemoved
in interface ModelListener
constraint
- removed constraintpublic void beforeAssigned(long iteration, Value value)
ModelListener
Value.variable()
).
beforeAssigned
in interface ModelListener
iteration
- current iterationvalue
- value to be assignedpublic void beforeUnassigned(long iteration, Value value)
ModelListener
Value.variable()
).
beforeUnassigned
in interface ModelListener
iteration
- current iterationvalue
- value to be unassignedpublic void afterAssigned(long iteration, Value value)
FinalSectioning.resection(Lecture, boolean, boolean)
is called when given iteration number
is greater than zero.
afterAssigned
in interface ModelListener
iteration
- current iterationvalue
- value to be assignedpublic void afterUnassigned(long iteration, Value value)
ModelListener
Value.variable()
).
afterUnassigned
in interface ModelListener
iteration
- current iterationvalue
- value to be unassignedpublic boolean init(Solver solver)
init
in interface ModelListener
solver
- IFS solver
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |