public class InstructorFairness extends TimetablingCriterion
Modifier and Type | Class and Description |
---|---|
class |
InstructorFairness.InstructorFairnessContext
Context for InstructorFairness
|
AbstractCriterion.ValueContext, AbstractCriterion.ValueUpdateType
iBest, iDebug, iWeight, sDoubleFormat, sPercentFormat
sMaxSize
Constructor and Description |
---|
InstructorFairness() |
Modifier and Type | Method and Description |
---|---|
void |
bestSaved(Assignment<Lecture,Placement> assignment)
Notification that the current solution has been saved to the best.
|
AbstractCriterion.ValueContext |
createAssignmentContext(Assignment<Lecture,Placement> assignment)
Create a new assignment context for the given assignment.
|
void |
getExtendedInfo(Assignment<Lecture,Placement> assignment,
Map<String,String> info)
Extended information about current solution.
|
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 |
getValue(Assignment<Lecture,Placement> assignment)
Current value of the criterion (optimization objective)
|
double |
getValue(Assignment<Lecture,Placement> assignment,
Collection<Lecture> variables)
Value of a part of the problem (given by the collection of variables)
|
double |
getValue(Assignment<Lecture,Placement> assignment,
Placement value,
Set<Placement> conflicts)
Value of a proposed assignment (including hard conflicts)
|
double |
getWeightDefault(DataProperties config)
Defines default weight (when
AbstractCriterion.getWeightName() parameter is not present in the criterion). |
configure, getPlacementSelectionAdjustmentsName, getPlacementSelectionWeight, getPlacementSelectionWeightDefault
afterAssigned, afterUnassigned, beforeAssigned, beforeUnassigned, bestRestored, clearCache, computeBounds, constraintAdded, constraintRemoved, getAbbreviation, getAssignmentContextReference, getBest, getBounds, getBounds, getBounds, getBounds, getContext, getContext, getModel, getName, getPerc, getPercentage, getPercRev, getValue, getValue, getValueUpdateType, getWeight, getWeightedBest, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightName, inc, inc, init, setAssignmentContextReference, setModel, setValueUpdateType, toString, variableAdded, variableRemoved
public InstructorFairness()
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 TimetablingCriterion
public void bestSaved(Assignment<Lecture,Placement> assignment)
Criterion
public double getValue(Assignment<Lecture,Placement> assignment, Placement value, Set<Placement> conflicts)
Criterion
assignment
- current assignmentvalue
- given valueconflicts
- values conflicting with the given valuepublic double getValue(Assignment<Lecture,Placement> assignment)
Criterion
public double getValue(Assignment<Lecture,Placement> assignment, Collection<Lecture> variables)
Criterion
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-problempublic void getExtendedInfo(Assignment<Lecture,Placement> assignment, Map<String,String> info)
ExtendedInfoProvider
InfoProvider.getInfo(Assignment, Map)
, but some more information (that is more
expensive to compute) might be added.getExtendedInfo
in interface ExtendedInfoProvider<Lecture,Placement>
getExtendedInfo
in class AbstractCriterion<Lecture,Placement>
assignment
- current assignmentinfo
- extended infopublic AbstractCriterion.ValueContext createAssignmentContext(Assignment<Lecture,Placement> assignment)
HasAssignmentContext
createAssignmentContext
in interface HasAssignmentContext<Lecture,Placement,AbstractCriterion.ValueContext>
createAssignmentContext
in class AbstractCriterion<Lecture,Placement>
assignment
- an assignment for which there needs to be an assignment context