public class NoStudentOnlineConflicts extends GlobalConstraint<Lecture,Placement>
StudentOnlineConflict
criterion for a soft variant.
iConstraintListeners, iId
Constructor and Description |
---|
NoStudentOnlineConflicts() |
Modifier and Type | Method and Description |
---|---|
void |
computeConflicts(Assignment<Lecture,Placement> assignment,
Placement placement,
Set<Placement> conflicts)
The only method which has to be implemented by any constraint.
|
String |
getName()
Constraint's name -- for printing purposes
|
boolean |
inConflict(Assignment<Lecture,Placement> assignment,
Placement placement)
Returns true if the given assignment is inconsistent with the existing
assignments respecting this constraint.
|
boolean |
isConsistent(Placement p1,
Placement p2)
Returns true if the given assignments are consistent respecting this
constraint.
|
protected boolean |
isOnline(Placement p) |
void |
setModel(Model<Lecture,Placement> model)
Sets the model which the constraint belongs to
|
String |
toString() |
addVariable, assigned, assignedVariables, countAssignedVariables, removeVariable, unassigned, variables
addConstraintListener, compareTo, computeConflictsNoForwardCheck, constraintListeners, countVariables, equals, getDescription, getId, getModel, hashCode, isHard, removeConstraintListener
public NoStudentOnlineConflicts()
public void setModel(Model<Lecture,Placement> model)
Constraint
setModel
in class Constraint<Lecture,Placement>
model
- problem modelpublic void computeConflicts(Assignment<Lecture,Placement> assignment, Placement placement, Set<Placement> conflicts)
Constraint
computeConflicts
in class Constraint<Lecture,Placement>
assignment
- current assignmentplacement
- value to be assigned to its variableconflicts
- resultant set of conflicting valuespublic boolean inConflict(Assignment<Lecture,Placement> assignment, Placement placement)
Constraint
MacPropagation
).inConflict
in class Constraint<Lecture,Placement>
assignment
- current assignmentplacement
- given valuepublic boolean isConsistent(Placement p1, Placement p2)
Constraint
MacPropagation
).isConsistent
in class Constraint<Lecture,Placement>
p1
- a valuep2
- a valuepublic String getName()
Constraint
getName
in class Constraint<Lecture,Placement>