Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

## Package umontreal.iro.lecuyer.contactcenters.msk

Provides a generic simulator for multi-skill and blend call centers.

See:
Description

Class Summary
AbstractCallCenterSim |
CallCenterParamsConverter |
CallCenterSim | Encapsulates all the components of the blend and multi-skill call center simulator, and provides methods to perform simulations and obtain results.
CallCenterSimRQMC | Extends the `CallCenterSim` class for randomized Quasi-Monte Carlo simulation.
CallCenterSimStrat | Defines a call center simulator using stratified sampling.
CallCenterSimUtil |
CallTracer | Observer sending any notified call to a contact trace facility.
Messages |
OldCallCenterParamsConverter |
ParameterEstimator | Estimates the parameters of a call center model.
PeriodCovarianceEstimator |

## Package umontreal.iro.lecuyer.contactcenters.msk Description

Provides a generic simulator for multi-skill and blend call centers. ContactCenters can be used directly to construct simulators for arbitrarily complex contact centers. See the `examples.pdf` document for examples of this. However, this requires programming and the resulting programs can become complex. This package provides a generic simulator adapted for call centers with multiple call types and agent groups, and using XML configuration files. It can be used for many simulation scenarios, and estimates a large set of performance measures.

This reference documentation covers all classes and methods in the simulator. It is targeted at developers who are using the tool in a program, or extending it. See the `guidemsk.pdf` document for a description of the model implemented by this simulator, and examples showing how to configure and use the tool from a user perspective.

The simulator implemented in this package is split into several components representing the model, the simulation logic, and the system managing statistics. The model regroups every entity of the call center, e.g., calls, agent groups, waiting queues, routers, etc. It also specifies how random numbers are generated throughout the simulation.

The simulation logic contains the necessary instructions to run the model in order to generate results. It defines the concept of a step and assigns statistical periods to calls. For a simulation with independent replications, each step corresponds to a replication while the statistical period is usually the period of arrival. For a simulation of a single period as it was infinite in the model, steps correspond to time intervals of a single long replication, and the statistical period is always 0.

The system managing statistics, on the other hand, is made of observers, and matrices of counters. Observers are registered to collect information about every call leaving the system, and the evolution of agent groups and waiting queues. All this information is used to update matrices of counters whose rows usually correspond to call types or agent groups, and columns, to periods. At the end of each simulation step, the values of the counters are added to matching matrices of statistical collectors. After the simulation is done, matrices of averages, sample variances, and other statistics can be obtained.

Figure 2 shows a UML diagram of the simulator's main classes. The model is implemented by classes in package `umontreal.iro.lecuyer.contactcenters.msk.model`, `CallCenter` being the main class. The simulation logics are implemented in package `umontreal.iro.lecuyer.contactcenters.msk.simlogic` with the `SimLogic` interface representing any simulation logic. The management of statistics is in package `umontreal.iro.lecuyer.contactcenters.msk.stat`. Matrices of counters are encapsulated in an object of `CallCenterMeasureManager`, while matrices of statistical probes are stored in an instance of a class implementing the `CallCenterStatProbes`. See the documentation of these packages for more information about these components and the classes.

Figure 2: UML diagram of the generic blend/multi-skill simulator

The simulator provides three packages in addition to the packages providing the implementation for the main components. The package `umontreal.iro.lecuyer.contactcenters.msk.cv` provides an implementation of control variates to reduce the variance in simulations. The package `umontreal.iro.lecuyer.contactcenters.msk.spi` provides interfaces used when integrating a custom arrival process, routing or dialing policy into the simulator. The package `umontreal.iro.lecuyer.contactcenters.msk.conditions` implement conditions that can be used by some routing and dialing policies.

The class `CallCenterSim` represents the simulator as a whole, and implements the interface `ContactCenterSim`, which provides methods to perform simulations and obtain statistics in a standardized way. It provides a main method that can be used to call the simulator from the command line. The simulator can also be called from Java code.

Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES

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