public class RoutObjFuncMatchRate extends AbstractRoutingObjFunc
RoutObjFuncMatchRateA
instead.
The user must input the property matchRatesTarget
in CallCenterSim
.
The parameter matchRatesTarget needs to be a numberArray of size
K×I
where each row
corresponds to each call type, and each column corresponds to a group, and
K is the number of call types and I is the number of groups.
There is no match rate of aggregated call types or groups.
The target match rate should be between 0 and 1 (but there is no check). This class does not check for validity of the values. The sum of the values of a row can be higher than 1. The user can set negative values so that no penalty will be given, or a value greater than 1 so there will be a penalty cost.
The formula is the sum of the square of the abandonment ratios :
The best score is 0 if the match rates satisfy all their target.
Modifier and Type | Field and Description |
---|---|
protected double[][] |
s
The penalty weight with indexes [type][group].
|
protected double[][] |
target
The target match rate for [type][group], the values should be
between 0 and 1.
|
cc, eval, numGroups, numTypes
Constructor and Description |
---|
RoutObjFuncMatchRate(CallCenterSim eval)
Create the objective function with weight parameters sk, i = 1.
|
RoutObjFuncMatchRate(CallCenterSim eval,
boolean printName) |
RoutObjFuncMatchRate(CallCenterSim eval,
double[][] s)
Create the objective function with given weight value for each call type and group,
see the description of the score formula in the Class description.
|
RoutObjFuncMatchRate(CallCenterSim eval,
double[][] s,
boolean printName) |
Modifier and Type | Method and Description |
---|---|
double |
getScore()
Get the score based on the last simulation.
|
void |
printFunctionName()
Print the name of the function.
|
getCallCenter, getEval, setEval
protected double[][] s
protected double[][] target
public RoutObjFuncMatchRate(CallCenterSim eval)
eval
- the call center simulator.public RoutObjFuncMatchRate(CallCenterSim eval, boolean printName)
public RoutObjFuncMatchRate(CallCenterSim eval, double[][] s)
eval
- the call center simulator.s
- the score weight for each call type and group, see formula. This constructor
creates a deep copy of this vector. If null, then all the score weight sk, i = 1.public RoutObjFuncMatchRate(CallCenterSim eval, double[][] s, boolean printName)
public void printFunctionName()
AbstractRoutingObjFunc
printFunctionName
in interface RoutingObjectiveFunc
printFunctionName
in class AbstractRoutingObjFunc
public double getScore()
AbstractRoutingObjFunc
getScore
in interface RoutingObjectiveFunc
getScore
in class AbstractRoutingObjFunc