Class InterpolatedPrioMVAUtilCalculator
java.lang.Object
solvers.priority.prioMVACalculators.BasePrioMVAUtilCalculator
solvers.priority.prioMVACalculators.InterpolatedPrioMVAUtilCalculator
- All Implemented Interfaces:
UtilizationCalculator
- Direct Known Subclasses:
CL_YPrioMVAUtilCalculator, CL_ZPrioMVAUtilCalculator, CLPrioMVAUtilCalculator, NLI_LIPrioMVAUtilCalculator, NLI_YPrioMVAUtilCalculator, NLI_ZPrioMVAUtilCalculator, RNLI_LIPrioMVAUtilCalculator, RNLI_NCPrioMVAUtilCalculator, RNLI_YPrioMVAUtilCalculator, RNLI_ZPrioMVAUtilCalculator
Priority MVA utilization calculator based on interpolation.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final intprotected static final inty_2 can equal 0 (when the queue length rounds up to population of the class so N_class - x2 = 0 and the utilisation at 0 is 0) and in this situation, the following ints decide what should be doneprotected static final intprotected static final intFields inherited from class BasePrioMVAUtilCalculator
opUtilization, queueLengthMap, utilMap -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedInterpolatedPrioMVAUtilCalculator(Interpolator interpolator, int behaviourWhenZero) -
Method Summary
Modifier and TypeMethodDescriptiondoublegetNonEmptyClosedUtilisation(MVAPopulation population, int numCustomers, int station, int clas) doubleinterpolateWhenYTwoIsZero(double lowerQueueLength, double lowerUtil, double higherQueueLength, double higherUtil, double queueLength) Methods inherited from class BasePrioMVAUtilCalculator
getClosedUtilisation, getOpenUtilisation, initialise, iterateClassUpdate, iteratePopulationUpdate
-
Field Details
-
NO_CHANGE
protected static final int NO_CHANGEy_2 can equal 0 (when the queue length rounds up to population of the class so N_class - x2 = 0 and the utilisation at 0 is 0) and in this situation, the following ints decide what should be done- See Also:
-
RETURN_Y_ONE
protected static final int RETURN_Y_ONE- See Also:
-
RETURN_ZERO
protected static final int RETURN_ZERO- See Also:
-
LINEAR_INTERPOLATE
protected static final int LINEAR_INTERPOLATE- See Also:
-
-
Constructor Details
-
InterpolatedPrioMVAUtilCalculator
-
-
Method Details
-
getNonEmptyClosedUtilisation
public double getNonEmptyClosedUtilisation(MVAPopulation population, int numCustomers, int station, int clas) - Specified by:
getNonEmptyClosedUtilisationin classBasePrioMVAUtilCalculator
-
interpolateWhenYTwoIsZero
public double interpolateWhenYTwoIsZero(double lowerQueueLength, double lowerUtil, double higherQueueLength, double higherUtil, double queueLength)
-