ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.ctmc
Class CallCenterStat

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.ctmc.CallCenterStat

public class CallCenterStat
extends Object

Regroups tallies collecting observations obtained from independent replications of a simulation using a CTMC in the case of an individual period. After an object of this class is constructed, it can be initialized using init(CallCenterCTMC). While transitions are simulated, a set of counters represented by an instance of CallCenterCounters is updated. At the end of the replication, the set of counters is given to the addObs(CallCenterCounters,double) method of this class to collect the observations. Statistical collectors are regrouped into matrices concerning types of performance measures. The method getMatrixOfStatProbes(PerformanceMeasureType) can be used to obtain the matrix of statistical probes for a given type of performance measure.


Field Summary
protected  ListOfTallies<?> statAbandoned
           
protected  ListOfTallies<?> statAbandonedBeforeAWT
           
protected  ListOfTallies<?> statArrivals
           
protected  ListOfTallies<?> statBlocked
           
protected  ListOfTallies<?> statBusyAgents
           
protected  ListOfTallies<?> statGoodSL
           
protected  ListOfTallies<?> statMaxBusyAgents
           
protected  ListOfTallies<?> statMaxQueueSize
           
protected  Tally statNumFalseTransitions
           
protected  Tally statNumTransitions
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statOccupancy
           
protected  ListOfTallies<?> statQueueSize
           
protected  ListOfTallies<?> statServedBeforeAWT
           
protected  MatrixOfTallies<?> statServedRates
           
protected  ListOfTallies<?> statService
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statSL
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statSL2
           
protected  ListOfTallies<?> statSumWaitingTimes
           
protected  ListOfTallies<?> statSumWaitingTimesAbandoned
           
protected  ListOfTallies<?> statSumWaitingTimesServed
           
protected  ListOfTallies<?> statTotalAgents
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTime
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTimeAbandoned
           
protected  ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTimeServed
           
 
Constructor Summary
CallCenterStat(CallCenterCTMC ctmc, int ns, boolean keepObs)
          Constructs a new set of statistical probes based on the CTMC model ctmc, with ns matrices of acceptable waiting times.
 
Method Summary
 void addObs(CallCenterCounters counters, double periodDuration)
          Adds new observations obtained from counters to the statistical probes managed by this object.
static double[] addSumElement(double[] array)
           
 void formatReport(Map<String,Object> evalInfo, double numExpectedTransitions)
          Adds statistical information about the number of transitions to a map of evaluation information.
 Map<PerformanceMeasureType,MatrixOfStatProbes<?>> getMatricesOfStatProbes()
          Returns a map associating each supported type of performance measure with a matrix of statistical probes.
 MatrixOfStatProbes<?> getMatrixOfStatProbes(PerformanceMeasureType m)
          Returns the matrix of statistical probes corresponding to the performance measure type m.
 PerformanceMeasureType[] getPerformanceMeasures()
          Returns an array of types of performance measures for which statistics are collected by this object.
 Tally getStatNumFalseTransitions()
          Returns the tally for statistics on the number of false transitions, also called self jumps.
 Tally getStatNumTransitions()
          Returns the tally for statistics on the number of simulated transitions.
 void init(CallCenterCTMC ctmc)
          Initializes the statistical probes in this object.
 void initLambda(CallCenterCTMC[] ctmcs)
          Initializes the arrival rates used by this statistical collector by summing the arrival rates for all the CTMCs in the given array.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

statNumTransitions

protected Tally statNumTransitions

statNumFalseTransitions

protected Tally statNumFalseTransitions

statArrivals

protected ListOfTallies<?> statArrivals

statBlocked

protected ListOfTallies<?> statBlocked

statAbandoned

protected ListOfTallies<?> statAbandoned

statService

protected ListOfTallies<?> statService

statQueueSize

protected ListOfTallies<?> statQueueSize

statBusyAgents

protected ListOfTallies<?> statBusyAgents

statTotalAgents

protected ListOfTallies<?> statTotalAgents

statServedRates

protected MatrixOfTallies<?> statServedRates

statOccupancy

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statOccupancy

statWaitingTime

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTime

statSumWaitingTimesServed

protected ListOfTallies<?> statSumWaitingTimesServed

statSumWaitingTimesAbandoned

protected ListOfTallies<?> statSumWaitingTimesAbandoned

statSumWaitingTimes

protected ListOfTallies<?> statSumWaitingTimes

statMaxQueueSize

protected ListOfTallies<?> statMaxQueueSize

statMaxBusyAgents

protected ListOfTallies<?> statMaxBusyAgents

statGoodSL

protected ListOfTallies<?> statGoodSL

statServedBeforeAWT

protected ListOfTallies<?> statServedBeforeAWT

statAbandonedBeforeAWT

protected ListOfTallies<?> statAbandonedBeforeAWT

statSL

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statSL

statSL2

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statSL2

statWaitingTimeServed

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTimeServed

statWaitingTimeAbandoned

protected ListOfFunctionOfMultipleMeansTallies<FunctionOfMultipleMeansTally> statWaitingTimeAbandoned
Constructor Detail

CallCenterStat

public CallCenterStat(CallCenterCTMC ctmc,
                      int ns,
                      boolean keepObs)
Constructs a new set of statistical probes based on the CTMC model ctmc, with ns matrices of acceptable waiting times. The boolean keepObs indicates if observations are kept while collecting statistics.

Parameters:
ctmc - the call center CTMC.
ns - the number of matrices of acceptable waiting times.
keepObs - determines if collected observations are kept.
Method Detail

getStatNumFalseTransitions

public Tally getStatNumFalseTransitions()
Returns the tally for statistics on the number of false transitions, also called self jumps.

Returns:
the tally for collecting the number of false transitions.

getStatNumTransitions

public Tally getStatNumTransitions()
Returns the tally for statistics on the number of simulated transitions.

Returns:
the tally for collecting the number of simulated transitions.

getPerformanceMeasures

public PerformanceMeasureType[] getPerformanceMeasures()
Returns an array of types of performance measures for which statistics are collected by this object.

Returns:
the array of performance measures.

getMatricesOfStatProbes

public Map<PerformanceMeasureType,MatrixOfStatProbes<?>> getMatricesOfStatProbes()
Returns a map associating each supported type of performance measure with a matrix of statistical probes.

Returns:
the map associating the performance measures with matrices of statistical probes.

getMatrixOfStatProbes

public MatrixOfStatProbes<?> getMatrixOfStatProbes(PerformanceMeasureType m)
Returns the matrix of statistical probes corresponding to the performance measure type m.

Parameters:
m - the type of the performance measure.
Returns:
the associated matrix of statistical probes.

init

public void init(CallCenterCTMC ctmc)
Initializes the statistical probes in this object. The given CTMC model is used for initializing the arrival rates which are used for some statistics.


initLambda

public void initLambda(CallCenterCTMC[] ctmcs)
Initializes the arrival rates used by this statistical collector by summing the arrival rates for all the CTMCs in the given array. The arrival rates are used by addObs(CallCenterCounters,double) to compute the expected number of arrivals during the considered period. By default, the arrival rates are initialized from the parameters of the CTMC given to the init(CallCenterCTMC) method. With this method, the arrival rates can be replaced with sums over several periods, to get the total arrival rate over all periods of an horizon.

Parameters:
ctmcs - the array of CTMCs.

addObs

public void addObs(CallCenterCounters counters,
                   double periodDuration)
Adds new observations obtained from counters to the statistical probes managed by this object. The period duration periodDuration is used to multiply the arrival rates in order to get the expected number of arrivals over the considered period.

Parameters:
counters - the counters to get statistics from.
periodDuration - the period duration.

addSumElement

public static double[] addSumElement(double[] array)

formatReport

public void formatReport(Map<String,Object> evalInfo,
                         double numExpectedTransitions)
Adds statistical information about the number of transitions to a map of evaluation information. Usually, the map is obtained using ContactCenterEval.getEvalInfo(), and generated information is displayed in reports produced by a simulator.

Parameters:
evalInfo - the evaluation information.
numExpectedTransitions - the expected number of transitions.

ContactCenters
V. 0.9.9.

To submit a bug or ask questions, send an e-mail to Richard Simard.