public abstract class ExamCriterion extends AbstractCriterion<Exam,ExamPlacement>
AbstractCriterion.ValueContext, AbstractCriterion.ValueUpdateType
iBest, iDebug, iWeight, sDoubleFormat, sPercentFormat
sMaxSize
Constructor and Description |
---|
ExamCriterion() |
Modifier and Type | Method and Description |
---|---|
double[] |
getBounds(Assignment<Exam,ExamPlacement> assignment,
Collection<Exam> exams)
Value bounds (minimum and maximum) of the criterion on a part of the problem
|
void |
getInfo(Assignment<Exam,ExamPlacement> assignment,
Map<String,String> info)
Adds some information into the table with information about the solution
|
double |
getPeriodValue(Assignment<Exam,ExamPlacement> assignment,
ExamPlacement value)
Return impact of this criterion on period assignment (if this criterion is based on period assignment).
|
double |
getRoomValue(Assignment<Exam,ExamPlacement> assignment,
ExamPlacement value)
Return impact of this criterion on room assignment (if this criterion is based on room assignment).
|
String |
getWeightName()
Defines weight name (to be used to get the criterion weight from the configuration).
|
void |
getXmlParameters(Map<String,String> params)
Put all the parameters of this criterion into a map that is used to write parameters section of the examination XML file.
|
String |
getXmlWeightName()
Name of the weight parameter in the parameters section of the examination XML file.
|
boolean |
isPeriodCriterion()
True if this criterion is based on period assignment.
|
boolean |
isRoomCriterion()
True if this criterion is based on room assignment.
|
void |
setWeight(double weight) |
void |
setXmlParameters(Map<String,String> params)
Set all the parameters of this criterion from a map that is read from the parameters section the examination XML file.
|
afterAssigned, afterUnassigned, beforeAssigned, beforeUnassigned, bestRestored, bestSaved, clearCache, computeBounds, configure, constraintAdded, constraintRemoved, createAssignmentContext, getAbbreviation, getAssignmentContextReference, getBest, getBounds, getBounds, getBounds, getContext, getContext, getExtendedInfo, getInfo, getModel, getName, getPerc, getPercentage, getPercRev, getValue, getValue, getValue, getValue, getValueUpdateType, getWeight, getWeightDefault, getWeightedBest, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, getWeightedValue, inc, inc, init, setAssignmentContextReference, setModel, setValueUpdateType, toString, variableAdded, variableRemoved
public ExamCriterion()
public void setWeight(double weight)
public String getWeightName()
AbstractCriterion
getWeightName
in class AbstractCriterion<Exam,ExamPlacement>
public double[] getBounds(Assignment<Exam,ExamPlacement> assignment, Collection<Exam> exams)
Criterion
getBounds
in interface Criterion<Exam,ExamPlacement>
getBounds
in class AbstractCriterion<Exam,ExamPlacement>
assignment
- current assignmentexams
- list of problem variablespublic void getInfo(Assignment<Exam,ExamPlacement> assignment, Map<String,String> info)
InfoProvider
getInfo
in interface InfoProvider<Exam,ExamPlacement>
getInfo
in class AbstractCriterion<Exam,ExamPlacement>
assignment
- current assignmentinfo
- info tablepublic boolean isPeriodCriterion()
ExamPlacement.getTimeCost(Assignment)
.public double getPeriodValue(Assignment<Exam,ExamPlacement> assignment, ExamPlacement value)
ExamPlacement.getTimeCost(Assignment)
.assignment
- current assignmentvalue
- new assignment in questionpublic boolean isRoomCriterion()
ExamPlacement.getRoomCost(Assignment)
.public double getRoomValue(Assignment<Exam,ExamPlacement> assignment, ExamPlacement value)
ExamPlacement.getRoomCost(Assignment)
.assignment
- current assignmentvalue
- new assignment in questionpublic String getXmlWeightName()
public void getXmlParameters(Map<String,String> params)
params
- map of parameters (parameter = value) to be populatedpublic void setXmlParameters(Map<String,String> params)
params
- map of parameters (parameter = value) loaded from XML