|
ContactCenters V. 0.9.9. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectumontreal.iro.lecuyer.contactcenters.server.GroupVolumeStat
umontreal.iro.lecuyer.contactcenters.server.GroupVolumeStatMeasureMatrix
public class GroupVolumeStatMeasureMatrix
Agent group statistical collector implementing
MeasureMatrix
.
This class extends GroupVolumeStat
and
implements the MeasureMatrix
interface
and defines measures for the service, idle,
working, and total volumes.
The service volume corresponds to the integral
of the number of busy agents [i](t) obtained by
AgentGroup.getNumBusyAgents()
.
The idle volume is the integral of the number of idle agents [i](t)
over the simulation time. This is obtained using
AgentGroup.getNumIdleAgents()
.
The working volume is the integral
of the number of working agents,
[i](t) +
[i](t) over the simulation time,
obtained by
AgentGroup.getNumBusyAgents()
, and
AgentGroup.getNumFreeAgents()
.
The total volume corresponds to the integral of the
number of agents
(Ni(t) +
[i](t))dt =
(
[i](t) +
[i](t))dt
over the simulation time.
This quantity is given by the sum of the accumulates
returned by the methods
AgentGroup.getNumAgents()
and
AgentGroup.getNumGhostAgents()
.
These quantities can be used to compute
the agent group's occupancy ratio, which is the
ratio of the service volume and total volume,
or the ratio of the service volume over the working volume.
This class can be given the number of contact types K to
track for computing
[i, k](t) dt.
If K > 1, the measure
0≤k < K represents the integral of
the number of busy agents serving contacts of type k
over the simulation time.
Measures K through K + 3 represents
respectively the
service, idle, working, and total volumes.
When K = 1, the measure 0 corresponds to the service volume, the measure 1, to the idle volume, and the measure 2 is the working volume, and measure 3 is the total volume.
Since this measure matrix supports only one period,
it must be combined with
IntegralMeasureMatrix
for one to get the measures for each period.
Constructor Summary | |
---|---|
GroupVolumeStatMeasureMatrix(AgentGroup group)
Constructs a new agent-group volume statistical probe observing the agent group group and only computing aggregate statistics. |
|
GroupVolumeStatMeasureMatrix(AgentGroup group,
int numTypes)
Constructs a new agent-group volume statistical probe observing the agent group group, and supporting numTypes contact types. |
|
GroupVolumeStatMeasureMatrix(Simulator sim,
AgentGroup group)
Equivalent to GroupVolumeStatMeasureMatrix(AgentGroup) ,
using the given simulator sim
for creating internal probes. |
|
GroupVolumeStatMeasureMatrix(Simulator sim,
AgentGroup group,
int numTypes)
Equivalent to GroupVolumeStatMeasureMatrix(AgentGroup,int) ,
using the given simulator sim
for creating internal probes. |
Method Summary | |
---|---|
static MeasureSet |
getIdleVolumeMeasureSet(MeasureMatrix[] vcalc)
Returns a measure set regrouping the idle volumes for several agent groups and computing the sum. |
double |
getMeasure(int i,
int p)
Returns the measure corresponding to the index i and period p. |
int |
getNumMeasures()
Returns the number of measures calculated by the implementation of this interface. |
int |
getNumPeriods()
Returns the number of periods stored into this matrix of measures. |
static MeasureSet |
getServiceVolumeMeasureSet(MeasureMatrix[] vcalc)
Returns a measure set regrouping the service volumes for several agent groups and computing the sum. |
static MeasureSet |
getServiceVolumeMeasureSet(MeasureMatrix[] vcalc,
int numTypes)
Returns a measure set regrouping the service volumes stored in vcalc for numTypes contact types. |
static MeasureSet |
getTotalVolumeMeasureSet(MeasureMatrix[] vcalc)
Returns a measure set regrouping the total volumes for several agent groups. |
static MeasureSet |
getTotalVolumeMeasureSet(MeasureMatrix[] vcalc,
int numTypes)
Returns a measure set regrouping the total volumes stored in vcalc, with each total volume repeated numTypes times. |
static MeasureSet |
getWorkingVolumeMeasureSet(MeasureMatrix[] vcalc)
Returns a measure set regrouping the working volumes for several agent groups. |
static MeasureSet |
getWorkingVolumeMeasureSet(MeasureMatrix[] vcalc,
int numTypes)
Returns a measure set regrouping the working volumes stored in vcalc, with each working volume repeated numTypes times. |
void |
regroupPeriods(int x)
Increases the length of stored periods by regrouping them. |
void |
setNumMeasures(int nm)
Throws an UnsupportedOperationException . |
void |
setNumPeriods(int np)
Throws an UnsupportedOperationException . |
Methods inherited from class umontreal.iro.lecuyer.contactcenters.server.GroupVolumeStat |
---|
clone, getAgentGroup, getNumContactTypes, getStatNumAgents, getStatNumBusyAgents, getStatNumBusyAgents, getStatNumFreeAgents, getStatNumGhostAgents, getStatNumIdleAgents, init, setAgentGroup, setSimulator, toString |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface umontreal.iro.lecuyer.stat.mperiods.MeasureMatrix |
---|
init |
Constructor Detail |
---|
public GroupVolumeStatMeasureMatrix(AgentGroup group)
GroupVolumeStat
(group, 0).
group
- the observed agent group.public GroupVolumeStatMeasureMatrix(Simulator sim, AgentGroup group)
GroupVolumeStatMeasureMatrix(AgentGroup)
,
using the given simulator sim
for creating internal probes.
public GroupVolumeStatMeasureMatrix(AgentGroup group, int numTypes)
group
- the observed agent group.numTypes
- the number of contact types.
IllegalArgumentException
- if numTypes is negative.public GroupVolumeStatMeasureMatrix(Simulator sim, AgentGroup group, int numTypes)
GroupVolumeStatMeasureMatrix(AgentGroup,int)
,
using the given simulator sim
for creating internal probes.
Method Detail |
---|
public int getNumMeasures()
MeasureMatrix
getNumMeasures
in interface MeasureMatrix
public void setNumMeasures(int nm)
UnsupportedOperationException
.
setNumMeasures
in interface MeasureMatrix
nm
- the new number of measures.
UnsupportedOperationException
- if this method is called.public int getNumPeriods()
MeasureMatrix
getNumPeriods
in interface MeasureMatrix
public void setNumPeriods(int np)
UnsupportedOperationException
.
setNumPeriods
in interface MeasureMatrix
np
- the new number of periods.
UnsupportedOperationException
- if this method is called.public double getMeasure(int i, int p)
MeasureMatrix
getMeasure
in interface MeasureMatrix
i
- the index of the measure.p
- the period of the measure.
public void regroupPeriods(int x)
MeasureMatrix
MeasureMatrix.getNumPeriods()
/x -
1, it sums the values for periods xp, ...,xp+x-1,
and stores the results in period p whose length will be
x times the length of original periods. If the number of periods
is not a multiple of x, an additional period is used to contain
the remaining sums of values. The unused periods are zeroed for future
use. This method can be useful for memory management when using batch
means to estimate steady-state performance measures.
regroupPeriods
in interface MeasureMatrix
x
- the number of periods per group.public static MeasureSet getServiceVolumeMeasureSet(MeasureMatrix[] vcalc)
vcalc
- the agent group volume matrices.
public static MeasureSet getServiceVolumeMeasureSet(MeasureMatrix[] vcalc, int numTypes)
vcalc
- the agent group volume matrices.numTypes
- the number of contact types.
public static MeasureSet getIdleVolumeMeasureSet(MeasureMatrix[] vcalc)
vcalc
- the agent group volume matrices.
public static MeasureSet getWorkingVolumeMeasureSet(MeasureMatrix[] vcalc)
vcalc
- the agent group volume matrices.
public static MeasureSet getWorkingVolumeMeasureSet(MeasureMatrix[] vcalc, int numTypes)
int)
to compute per-contact type agent's occupancy ratios.
If the measure set is computing the sum rows (the default),
the last numTypes rows contain the sum of the working volumes for
all agents.
vcalc
- the agent group volume matrices.numTypes
- the number of contact types.
public static MeasureSet getTotalVolumeMeasureSet(MeasureMatrix[] vcalc)
vcalc
- the agent group volume matrices.
public static MeasureSet getTotalVolumeMeasureSet(MeasureMatrix[] vcalc, int numTypes)
getServiceVolumeMeasureSet(MeasureMatrix[],int)
to compute per-contact type agent's occupancy ratios.
If the measure set is computing the sum rows (the default),
the last numTypes rows contain the sum of the total volumes for
all agents.
vcalc
- the agent group volume matrices.numTypes
- the number of contact types.
|
ContactCenters V. 0.9.9. |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |