public class StudentOverLunchConflict extends StudentConflict
AbstractCriterion.ValueContext, AbstractCriterion.ValueUpdateType
iIncludeConflicts
iBest, iDebug, iWeight, sDoubleFormat, sPercentFormat
sMaxSize
Constructor and Description |
---|
StudentOverLunchConflict() |
Modifier and Type | Method and Description |
---|---|
void |
configure(DataProperties properties)
Configure the criterion if needed
|
void |
getInfo(Assignment<Lecture,Placement> assignment,
Map<String,String> info)
Adds some information into the table with information about the solution
|
void |
getInfo(Assignment<Lecture,Placement> assignment,
Map<String,String> info,
Collection<Lecture> variables)
Adds some information into the table with information about the solution,
only consider variables from the given set
|
String |
getPlacementSelectionWeightName() |
double |
getWeightDefault(DataProperties config)
Defines default weight (when
AbstractCriterion.getWeightName() parameter is not present in the criterion). |
boolean |
inConflict(Placement p1,
Placement p2)
There is a conflict when
isMorning(Placement) differs for the two placements. |
boolean |
isApplicable(Lecture l1,
Lecture l2) |
boolean |
isMorning(Placement placement)
Is the given placement in the morning or in the afternoon?
|
boolean |
shareDays(Placement p1,
Placement p2)
Are the two placements at the same day?
|
applicable, bestRestored, committed, distance, getBounds, getBounds, getMetrics, getValue, getValue, hard, ignore, incJenrl, isApplicable, jointEnrollment, 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, 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 StudentOverLunchConflict()
public void configure(DataProperties properties)
Criterion
public boolean shareDays(Placement p1, Placement p2)
public boolean isMorning(Placement placement)
public boolean inConflict(Placement p1, Placement p2)
isMorning(Placement)
differs for the two placements.
When parameter StudentConflict.OverLunchSameDayOnly is true, only conflicts that are on the same day
(shareDays(Placement, Placement)
returns true) are counted.inConflict
in class StudentConflict
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
public void getInfo(Assignment<Lecture,Placement> assignment, Map<String,String> info)
InfoProvider
getInfo
in interface InfoProvider<Lecture,Placement>
getInfo
in class AbstractCriterion<Lecture,Placement>
assignment
- current assignmentinfo
- info tablepublic void getInfo(Assignment<Lecture,Placement> assignment, Map<String,String> info, Collection<Lecture> variables)
InfoProvider
getInfo
in interface InfoProvider<Lecture,Placement>
getInfo
in class AbstractCriterion<Lecture,Placement>
assignment
- current assignmentinfo
- info tablevariables
- sub-problem