ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.msk.stat
Class CallCenterStatWithSlidingWindows

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.msk.stat.CallCenterStatWithSlidingWindows
All Implemented Interfaces:
Initializable, ToggleElement

public class CallCenterStatWithSlidingWindows
extends Object
implements Initializable, ToggleElement

Contains the necessary logic for computing statistics in time windows, for a call center model. Some routing or dialing policies might take decisions based on some statistics collected during the last few minutes of operation of the call center. This class provides the necessary tools for collecting such statistics. One first constructs an instance using a call center model, a number of periods, and a period duration. The instance is then registered with the model when statistics are needed, by using registerListeners(). The method getStat() can then be called at any time to obtain the statistics in the last time periods. Internally, this class uses counters with sliding windows to collect the observations.


Constructor Summary
CallCenterStatWithSlidingWindows(CallCenter cc, double periodDuration, int numPeriods, boolean contactTypeAgentGroup, PerformanceMeasureType... pms)
          Constructs a new call center statistical collector with sliding windows, for the call center model cc, a window of numPeriods periods of periodDuration time units, and for performance measures of type pms.
 
Method Summary
 CallCenterStatProbes getStat()
          Initializes an object containing the statistics in the last periods.
 void init()
          Resets the internal statistical counters.
 boolean isStarted()
          Determines if the element is enabled or disabled.
 void registerListeners()
          Registers listeners with the call center model in order to collect observations.
 void start()
          Enables the element represented by this object.
 void stop()
          Disables the element represented by this object.
 void unregisterListeners()
          Unregisters the listeners with the call center model.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CallCenterStatWithSlidingWindows

public CallCenterStatWithSlidingWindows(CallCenter cc,
                                        double periodDuration,
                                        int numPeriods,
                                        boolean contactTypeAgentGroup,
                                        PerformanceMeasureType... pms)
Constructs a new call center statistical collector with sliding windows, for the call center model cc, a window of numPeriods periods of periodDuration time units, and for performance measures of type pms. The boolean contactTypeAgentGroup determines if rows of type (call type, agent group) are needed or not for performance measures concerning call types.

Parameters:
cc - the call center model.
periodDuration - the duration of the statistical periods.
numPeriods - the number of statistical periods.
contactTypeAgentGroup - determines if (call type, agent group) rows are needed.
pms - the types of performance measures for which statistics are needed.
Method Detail

registerListeners

public void registerListeners()
Registers listeners with the call center model in order to collect observations.


unregisterListeners

public void unregisterListeners()
Unregisters the listeners with the call center model. This method may be used when the process using the statistics is stopped, in order to avoid unnecessary collecting of observations.


init

public void init()
Resets the internal statistical counters. This method should be called at the beginning of the simulation.

Specified by:
init in interface Initializable

start

public void start()
Description copied from interface: ToggleElement
Enables the element represented by this object. This method throws an IllegalStateException if the element is already enabled.

Specified by:
start in interface ToggleElement

stop

public void stop()
Description copied from interface: ToggleElement
Disables the element represented by this object. This method throws an IllegalStateException if the element is already disabled.

Specified by:
stop in interface ToggleElement

isStarted

public boolean isStarted()
Description copied from interface: ToggleElement
Determines if the element is enabled or disabled. Returns true if the element is enabled, false otherwise.

Specified by:
isStarted in interface ToggleElement
Returns:
the current state of the element.

getStat

public CallCenterStatProbes getStat()
Initializes an object containing the statistics in the last periods. The matrices of statistical collectors in the returned object contain a single column corresponding to the statistics.


ContactCenters
V. 0.9.9.

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