public class DelaySimScenarioGen extends Object implements DelayScenarioGenerator
In contrast to the delay scenario generator with Erlang A or C, we suggest the user to simulate a model with all call types, but a single generalist group using a FIFO queue. This is important: the call processus are unchanged, but all agent groups must be aggregated into one all-generalist group.
To limit the number of simulations, the user must beforehand
optimize the staffing for the aggregate call center.
The call center should be simulated with the listener CallCenterCallDist
,
so we can get the distributions.
To generate a scenario, generate randomly a state (total number of calls in system) and for each call, choose randomly its type with probability distribution proportional to their arrival rates.
Constructor and Description |
---|
DelaySimScenarioGen(CallCenter cc,
CallCenterCallDist ccDist) |
Modifier and Type | Method and Description |
---|---|
double[] |
computeStateDistribution(int numScenario,
double delayTarget)
Generate the state probability distribution of the total number of calls in the system.
|
int |
findMinServerDelay(double delayTarget)
Get the required number of generalists.
|
double[][] |
generateScenario(int numScenario,
double delayTarget)
Generate the scenarios randomly.
|
void |
init() |
static void |
main(String[] args) |
public DelaySimScenarioGen(CallCenter cc, CallCenterCallDist ccDist)
public void init()
public double[][] generateScenario(int numScenario, double delayTarget)
generateScenario
in interface DelayScenarioGenerator
numScenario
- the number of scenario to generate.delayTarget
- NOT USED! Because we assume the user already optimized the aggregate
call center.public int findMinServerDelay(double delayTarget)
findMinServerDelay
in interface DelayScenarioGenerator
delayTarget
- NOT USED! Because we suppose the user already optimized the aggregate
call center.public double[] computeStateDistribution(int numScenario, double delayTarget)
numScenario
- the number of scenario to be used to estimate the probability distribution.delayTarget
- NOT USED! Because we suppose already optimized the aggregate
call center.