public class RoutObjFuncAsaAban extends AbstractRoutingObjFunc
Note that the ASA is given in the time unit of the simulator while the ratio of abandonments is in percentage. The user needs to apply an appropriate scaling factor.
The user can set a weight of 0 for the global abandonment if he does not want to consider the global abandonment in the score function.
The formula is the sum of the square of the abandonment ratios :
Because the ASA does not have an upper bound, it is preferable to choose a b < 2.
The best score is 0 if there is 0 waiting time and no abandonments.
cc, eval, numGroups, numTypes
Constructor and Description |
---|
RoutObjFuncAsaAban(CallCenterSim eval)
Create the objective function with weight parameters sk = tk = 1, for
abandonment ratio (call types and global).
|
RoutObjFuncAsaAban(CallCenterSim eval,
boolean printName) |
RoutObjFuncAsaAban(CallCenterSim eval,
double[] s,
double[] t,
double asaScaling,
double asaExponent)
Create the objective function with given weight value for each call type and global,
see the description of the score formula in the Class description.
|
RoutObjFuncAsaAban(CallCenterSim eval,
double[] s,
double[] t,
double asaScaling,
double asaExponent,
boolean printName)
Create the objective function with given weight value for each call type and global,
see the description of the score formula in the Class description.
|
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
public RoutObjFuncAsaAban(CallCenterSim eval)
eval
- the call center simulator.public RoutObjFuncAsaAban(CallCenterSim eval, boolean printName)
public RoutObjFuncAsaAban(CallCenterSim eval, double[] s, double[] t, double asaScaling, double asaExponent)
eval
- the call center simulator.s
- the score weight for each call type and global for the ASA, see formula.t
- the score weight for each call type and global for the abandonments, see formula.asaScaling
- the scaling factor for the ASA measure, see formula.asaExponent
- the exponent for the ASA measure, see formula.public RoutObjFuncAsaAban(CallCenterSim eval, double[] s, double[] t, double asaScaling, double asaExponent, boolean printName)
eval
- the call center simulator.s
- the score weight for each call type and global for the ASA, see formula.t
- the score weight for each call type and global for the abandonments, see formula.asaScaling
- the scaling factor for the ASA measure, see formula.asaExponent
- the exponent for the ASA measure, see formula.printName
- choose to print the name and parameters of the objective or not at the creation of the object.public void printFunctionName()
AbstractRoutingObjFunc
printFunctionName
in interface RoutingObjectiveFunc
printFunctionName
in class AbstractRoutingObjFunc
public double getScore()
AbstractRoutingObjFunc
getScore
in interface RoutingObjectiveFunc
getScore
in class AbstractRoutingObjFunc