public class RoutObjFuncWaitAban extends AbstractRoutingObjFunc
Note that the waiting time 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 :
The best score is 0 if there is 0 waiting time and no abandonments.
cc, eval, numGroups, numTypes
Constructor and Description |
---|
RoutObjFuncWaitAban(CallCenterSim eval)
Create the objective function with weight parameters sk = tk = 1, for
abandonment ratio (call types and global).
|
RoutObjFuncWaitAban(CallCenterSim eval,
boolean printName) |
RoutObjFuncWaitAban(CallCenterSim eval,
double[] s,
double[] t,
double scaling,
double exponent)
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.
|
RoutObjFuncWaitAban(CallCenterSim eval,
double[] s,
double[] t,
double scaling,
double exponent,
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 RoutObjFuncWaitAban(CallCenterSim eval)
eval
- the call center simulator.public RoutObjFuncWaitAban(CallCenterSim eval, boolean printName)
public RoutObjFuncWaitAban(CallCenterSim eval, double[] s, double[] t, double scaling, double exponent)
eval
- the call center simulator.s
- the score weight for each call type and global for the waiting time, see formula.t
- the score weight for each call type and global for the abandonments, see formula.scaling
- the scaling factor for the waiting time, see formula.exponent
- the exponent for the waiting time, see formula.public RoutObjFuncWaitAban(CallCenterSim eval, double[] s, double[] t, double scaling, double exponent, boolean printName)
eval
- the call center simulator.s
- the score weight for each call type and global for the waiting time, see formula.t
- the score weight for each call type and global for the abandonments, see formula.scaling
- the scaling factor for the waiting time, see formula.exponent
- the exponent for the waiting time, 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