public class LargeExamsPenalty extends ExamCriterion
AbstractCriterion.ValueUpdateType
iBest, iDebug, iValue, iValueUpdateType, iWeight, sDoubleFormat, sPercentFormat
Constructor and Description |
---|
LargeExamsPenalty() |
Modifier and Type | Method and Description |
---|---|
double[] |
getBounds(Collection<Exam> variables)
Value bounds (minimum and maximum) of the criterion on a part of the problem
|
double |
getLargePeriod()
Period index (number of periods multiplied by this number) for front load
criteria for large exams.
|
int |
getLargePeriodIndex() |
int |
getLargeSize()
An exam is considered large, if its size is greater or equal to this
large size.
|
double |
getValue(ExamPlacement value,
Set<ExamPlacement> 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). |
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 |
init(Solver<Exam,ExamPlacement> solver)
Notification that the model was initialized by the solver.
|
void |
setLargePeriod(double largePeriod)
Period index (number of periods multiplied by this number) for front load
criteria for large exams.
|
void |
setLargeSize(int largeSize)
An exam is considered large, if its size is greater or equal to this
large size.
|
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.
|
String |
toString() |
getInfo, getPeriodValue, getRoomValue, isPeriodCriterion, isRoomCriterion, setWeight
afterAssigned, afterUnassigned, beforeAssigned, beforeUnassigned, bestRestored, bestSaved, clearCache, computeBounds, constraintAdded, constraintRemoved, getBest, getBounds, getInfo, getModel, getName, getPerc, getPercRev, getValue, getValue, getWeight, getWeightedBest, getWeightedValue, getWeightedValue, getWeightedValue, inc, variableAdded, variableRemoved
public LargeExamsPenalty()
public String getWeightName()
AbstractCriterion
getWeightName
in class ExamCriterion
public String getXmlWeightName()
ExamCriterion
getXmlWeightName
in class ExamCriterion
public void getXmlParameters(Map<String,String> params)
ExamCriterion
getXmlParameters
in class ExamCriterion
public void setXmlParameters(Map<String,String> params)
ExamCriterion
setXmlParameters
in class ExamCriterion
public double getWeightDefault(DataProperties config)
AbstractCriterion
AbstractCriterion.getWeightName()
parameter is not present in the criterion).getWeightDefault
in class AbstractCriterion<Exam,ExamPlacement>
public boolean init(Solver<Exam,ExamPlacement> solver)
ModelListener
init
in interface ModelListener<Exam,ExamPlacement>
init
in class AbstractCriterion<Exam,ExamPlacement>
solver
- IFS solverpublic int getLargeSize()
public void setLargeSize(int largeSize)
public double getLargePeriod()
public void setLargePeriod(double largePeriod)
public int getLargePeriodIndex()
public double getValue(ExamPlacement value, Set<ExamPlacement> conflicts)
Criterion
public double[] getBounds(Collection<Exam> variables)
Criterion
getBounds
in interface Criterion<Exam,ExamPlacement>
getBounds
in class ExamCriterion