ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.ctmc
Class IntMCallCenterCTMCSim

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterInfo
      extended by umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterEval
          extended by umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
              extended by umontreal.iro.lecuyer.contactcenters.ctmc.AbstractCallCenterCTMCSim
                  extended by umontreal.iro.lecuyer.contactcenters.ctmc.IntMCallCenterCTMCSim
All Implemented Interfaces:
ContactCenterEval, ContactCenterInfo, ContactCenterSim, ContactCenterSimWithObservations

public class IntMCallCenterCTMCSim
extends AbstractCallCenterCTMCSim


Field Summary
protected  CallCenterCounters counters2
           
protected  double numExpectedTransitions
           
 
Fields inherited from class umontreal.iro.lecuyer.contactcenters.ctmc.AbstractCallCenterCTMCSim
awt, cc, ccStat, counters, ctmc, mp, rateChange, simParams, trace
 
Fields inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
autoResetStartStream, seqSampEachEval
 
Constructor Summary
IntMCallCenterCTMCSim(CallCenter cc, CTMCRepSimParams simParams, int mp)
           
IntMCallCenterCTMCSim(CallCenterParams ccParams, CTMCRepSimParams simParams, int mp)
           
 
Method Summary
protected  void collectStat(TransitionType type)
           
static int getLowerBound(double lambda, double eps)
           
 double getNumExpectedTransitions()
           
static int getUpperBound(double lambda, double eps)
           
protected  void initReplication(RandomStream stream, double timeHorizon, int ntr)
           
static void main(String[] args)
           
 void newSeeds()
          Changes the seeds of the random number generators used during the simulation.
 void reset()
          Resets this contact center evaluation system for new parameters.
 void simulate(RandomStream stream, double timeHorizon, int n)
           
 void simulateTransitions(RandomStream stream, int i, double timeHorizon, int ntr)
           
 
Methods inherited from class umontreal.iro.lecuyer.contactcenters.ctmc.AbstractCallCenterCTMCSim
addObs, addTransitionListener, clearTransitionListeners, eval, formatInfo, formatReport, getAgentGroupName, getAgentGroupProperties, getAWT, getCompletedSteps, getConfidenceLevel, getContactTypeName, getContactTypeProperties, getCTMC, getCTMC, getCurrentPeriod, getDefaultUnit, getEvalOption, getEvalOptions, getMatrixOfAWTName, getMatrixOfStatProbes, getMaxNumAgents, getModel, getNumAgentGroups, getNumContactTypes, getNumFalseTransitions, getNumInContactTypes, getNumMainPeriods, getNumMatricesOfAWT, getNumOutContactTypes, getNumWaitingQueues, getObs, getPerformanceMeasures, getQueueCapacity, getReportParams, getRequiredNewSteps, getStaffing, getStaffingMatrix, getStat, getStatNumFalseTransitions, getTimeHorizon, getTransitionListeners, getWaitingQueueName, getWaitingQueueProperties, hasEvalOption, initStat, initTimer, notifyInit, notifyTransition, numberObs, removeTransitionListener, resetNextSubstream, resetStartStream, resetStartSubstream, seemsUnstable, setConfidenceLevel, setCurrentPeriod, setEvalOption, setMaxNumAgents, setQueueCapacity, setStaffing, setStaffingMatrix, setStat, setTimeHorizon, traceStep
 
Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterSim
formatStatistics, formatStatisticsExcel, formatStatisticsLaTeX, getAutoResetStartStream, getConfidenceInterval, getConfidenceInterval, getMatrixOfFunctionOfMultipleMeansTallies, getMatrixOfTallies, getMax, getMin, getOneSimDone, getPerformanceMeasure, getSeqSampEachEval, getVariance, hasPerformanceMeasure, setAutoResetStartStream, setOneSimDone, setSeqSampEachEval
 
Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterEval
getEvalInfo, isVerbose, setReportParams, setVerbose
 
Methods inherited from class umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterInfo
getAgentGroupSegmentName, getAgentGroupSegmentProperties, getContactTypeSegmentName, getContactTypeSegmentProperties, getInContactTypeSegmentName, getInContactTypeSegmentProperties, getMainPeriodName, getMainPeriodSegmentName, getNumAgentGroupSegments, getNumAgentGroupsWithSegments, getNumContactTypeSegments, getNumContactTypesWithSegments, getNumInContactTypeSegments, getNumInContactTypesWithSegments, getNumMainPeriodSegments, getNumMainPeriodsWithSegments, getNumOutContactTypeSegments, getNumOutContactTypesWithSegments, getNumWaitingQueueSegments, getNumWaitingQueuesWithSegments, getOutContactTypeSegmentName, getOutContactTypeSegmentProperties, getWaitingQueueSegmentName, getWaitingQueueSegmentProperties
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterSim
getAutoResetStartStream, getConfidenceInterval, getMatrixOfFunctionOfMultipleMeansTallies, getMatrixOfTallies, getMax, getMin, getSeqSampEachEval, getVariance, setAutoResetStartStream, setSeqSampEachEval
 
Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterEval
formatStatistics, formatStatisticsExcel, formatStatisticsLaTeX, getEvalInfo, getPerformanceMeasure, hasPerformanceMeasure, isVerbose, setReportParams, setVerbose
 
Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterInfo
getAgentGroupSegmentName, getAgentGroupSegmentProperties, getContactTypeSegmentName, getContactTypeSegmentProperties, getInContactTypeSegmentName, getInContactTypeSegmentProperties, getMainPeriodName, getMainPeriodSegmentName, getNumAgentGroupSegments, getNumAgentGroupsWithSegments, getNumContactTypeSegments, getNumContactTypesWithSegments, getNumInContactTypeSegments, getNumInContactTypesWithSegments, getNumMainPeriodSegments, getNumMainPeriodsWithSegments, getNumOutContactTypeSegments, getNumOutContactTypesWithSegments, getNumWaitingQueueSegments, getNumWaitingQueuesWithSegments, getOutContactTypeSegmentName, getOutContactTypeSegmentProperties, getWaitingQueueSegmentName, getWaitingQueueSegmentProperties
 

Field Detail

numExpectedTransitions

protected double numExpectedTransitions

counters2

protected CallCenterCounters counters2
Constructor Detail

IntMCallCenterCTMCSim

public IntMCallCenterCTMCSim(CallCenter cc,
                             CTMCRepSimParams simParams,
                             int mp)
                      throws CTMCCreationException
Throws:
CTMCCreationException

IntMCallCenterCTMCSim

public IntMCallCenterCTMCSim(CallCenterParams ccParams,
                             CTMCRepSimParams simParams,
                             int mp)
                      throws CTMCCreationException,
                             CallCenterCreationException
Throws:
CTMCCreationException
CallCenterCreationException
Method Detail

reset

public void reset()
Description copied from interface: ContactCenterEval
Resets this contact center evaluation system for new parameters. Every cached or processed parameter should be reread from the parameter objects. In the case of the simulation, one should try to preserve random number seeds whenever possible, even if the contact center needs to be reconstructed. Some implementatios of this interface provide specialized reset methods allowing to change the associated parameter objects.

Specified by:
reset in interface ContactCenterEval
Overrides:
reset in class AbstractCallCenterCTMCSim

newSeeds

public void newSeeds()
Description copied from interface: ContactCenterSim
Changes the seeds of the random number generators used during the simulation. When calling ContactCenterSim.eval() multiple times to perform a simulation, the results should be identical for the same values of parameters. If one requires the simulation to be performed with new random seeds, the random streams need to be reset. This can be done by calling RandomStream.resetNextSubstream() method on each RandomStream object associated with the simulator, or by creating new random streams.

Specified by:
newSeeds in interface ContactCenterSim
Overrides:
newSeeds in class AbstractCallCenterCTMCSim

getNumExpectedTransitions

public double getNumExpectedTransitions()
Specified by:
getNumExpectedTransitions in class AbstractCallCenterCTMCSim

collectStat

protected void collectStat(TransitionType type)

initReplication

protected void initReplication(RandomStream stream,
                               double timeHorizon,
                               int ntr)
Overrides:
initReplication in class AbstractCallCenterCTMCSim

simulateTransitions

public void simulateTransitions(RandomStream stream,
                                int i,
                                double timeHorizon,
                                int ntr)

getLowerBound

public static int getLowerBound(double lambda,
                                double eps)

getUpperBound

public static int getUpperBound(double lambda,
                                double eps)

simulate

public void simulate(RandomStream stream,
                     double timeHorizon,
                     int n)
Specified by:
simulate in class AbstractCallCenterCTMCSim

main

public static void main(String[] args)

ContactCenters
V. 0.9.9.

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