public class QuadraticStudentConflict extends StudentConflict
StudentConflict
, however,
student joint enrollments are squared (1 conflict counts as 1, 2 as 4, 3 as 9, etc.).
AbstractCriterion.ValueContext, AbstractCriterion.ValueUpdateType
iIncludeConflicts
iBest, iDebug, iWeight, sDoubleFormat, sPercentFormat
sMaxSize
Constructor and Description |
---|
QuadraticStudentConflict() |
Modifier and Type | Method and Description |
---|---|
String |
getPlacementSelectionWeightName() |
double |
getWeightDefault(DataProperties config)
Defines default weight (when
AbstractCriterion.getWeightName() parameter is not present in the criterion). |
void |
incJenrl(Assignment<Lecture,Placement> assignment,
JenrlConstraint jenrl,
double studentWeight,
Double conflictPriority,
Student student) |
boolean |
isApplicable(Lecture l1,
Lecture l2) |
protected double |
jointEnrollment(JenrlConstraint jenrl) |
applicable, bestRestored, committed, configure, distance, getBounds, getBounds, getMetrics, getValue, getValue, hard, ignore, inConflict, isApplicable, jointEnrollment, overlaps, slots, uncommitted, workday
getPlacementSelectionAdjustmentsName, getPlacementSelectionWeight, getPlacementSelectionWeightDefault
afterAssigned, afterUnassigned, beforeAssigned, beforeUnassigned, bestSaved, clearCache, computeBounds, constraintAdded, constraintRemoved, createAssignmentContext, getAbbreviation, getAssignmentContextReference, getBest, getBounds, getBounds, getContext, getContext, getExtendedInfo, getInfo, getInfo, getModel, getName, getPerc, getPercentage, getPercRev, getValue, getValue, getValue, getValueUpdateType, getWeight, getWeightedBest, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightName, inc, inc, init, setAssignmentContextReference, setModel, setValueUpdateType, toString, variableAdded, variableRemoved
public QuadraticStudentConflict()
public boolean isApplicable(Lecture l1, Lecture l2)
isApplicable
in class StudentConflict
public double getWeightDefault(DataProperties config)
AbstractCriterion
AbstractCriterion.getWeightName()
parameter is not present in the criterion).getWeightDefault
in class AbstractCriterion<Lecture,Placement>
config
- solver configurationpublic String getPlacementSelectionWeightName()
getPlacementSelectionWeightName
in class StudentConflict
protected double jointEnrollment(JenrlConstraint jenrl)
jointEnrollment
in class StudentConflict
public void incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)
incJenrl
in class StudentConflict