public class SameRoom extends InstructorSchedulingCriterion
Instructor
met
(counting Instructor.countSameRooms(Assignment, TeachingAssignment, double)
).AbstractCriterion.ValueContext, AbstractCriterion.ValueUpdateType
iBest, iDebug, iWeight, sDoubleFormat, sPercentFormat
sMaxSize
Constructor and Description |
---|
SameRoom() |
Modifier and Type | Method and Description |
---|---|
protected double[] |
computeBounds(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment)
Compute bounds (bounds are being cached by default).
|
void |
configure(DataProperties properties)
Configure the criterion if needed
|
String |
getAbbreviation()
Abbreviated name of the criterion for
Object.toString() . |
double[] |
getBounds(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment,
Collection<TeachingRequest.Variable> variables)
Value bounds (minimum and maximum) of the criterion on a part of the problem
|
double |
getDifferentTypeWeight()
Different instructional type weight
|
double |
getValue(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment,
Collection<TeachingRequest.Variable> variables)
Value of a part of the problem (given by the collection of variables)
|
double |
getValue(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment,
TeachingAssignment value,
Set<TeachingAssignment> 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). |
getAssignedInstructors, getInfo, getInfo, getInstructors
afterAssigned, afterUnassigned, beforeAssigned, beforeUnassigned, bestRestored, bestSaved, clearCache, constraintAdded, constraintRemoved, createAssignmentContext, getAssignmentContextReference, getBest, getBounds, 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 SameRoom()
public void configure(DataProperties properties)
Criterion
configure
in interface Criterion<TeachingRequest.Variable,TeachingAssignment>
configure
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>
properties
- configurationpublic double getWeightDefault(DataProperties config)
AbstractCriterion
AbstractCriterion.getWeightName()
parameter is not present in the criterion).getWeightDefault
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>
config
- solver configurationpublic double getDifferentTypeWeight()
public double getValue(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment, TeachingAssignment value, Set<TeachingAssignment> conflicts)
Criterion
assignment
- current assignmentvalue
- given valueconflicts
- values conflicting with the given valueprotected double[] computeBounds(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment)
AbstractCriterion
computeBounds
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>
assignment
- current assignmentpublic double[] getBounds(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment, Collection<TeachingRequest.Variable> variables)
Criterion
getBounds
in interface Criterion<TeachingRequest.Variable,TeachingAssignment>
getBounds
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>
assignment
- current assignmentvariables
- list of problem variablespublic double getValue(Assignment<TeachingRequest.Variable,TeachingAssignment> assignment, Collection<TeachingRequest.Variable> variables)
Criterion
getValue
in interface Criterion<TeachingRequest.Variable,TeachingAssignment>
getValue
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>
assignment
- current assignmentvariables
- list of problem variablespublic String getAbbreviation()
AbstractCriterion
Object.toString()
.getAbbreviation
in class AbstractCriterion<TeachingRequest.Variable,TeachingAssignment>