Class Qsys_mgisrgi_whitt
Poisson arrivals at rate lambda, iid general service times of mean 1/mu, s servers, r extra waiting spaces and iid patience times with a general distribution.
TWO APPROXIMATIONS. The general patience law is replaced by STATE-DEPENDENT Markovian abandonment: a customer who is jth from the end of a queue abandons at rate delta_j = h(j/lambda) for the patience hazard h = f/(1-F) (eq. 3.3), because such a customer has been waiting for about j/lambda; the total abandonment rate with k waiting is Delta_k = sum_{j<=k} delta_j (eq. 3.4). The general service law is replaced by an exponential of the same mean (Section 5), accurate here because with many servers and non-negligible abandonment the model behaves like a loss system, where the service law is insensitive beyond its mean. What is left is the Markovian M/M/s/r+M(n) model, solved as a birth-and-death process.
WHAT THE PATIENCE LAW CONTRIBUTES is only its hazard NEAR THE ORIGIN, not its mean and not its tail: waits are O(1/sqrt(s)) in the many-server regime, so a customer either abandons early or never.
Exact for M/M/s/r+M, which is Qsys_erlanga.
Port of MATLAB qsys_mgisrgi_whitt.m.
Reference: W. Whitt (2005). Engineering solution of a basic call-center model. Management Science 51(2), 221-235.
- Since:
- LINE 3.1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intTruncation level used when the waiting room is infinite.static final doubleRelative tail tolerance for that truncation. -
Method Summary
Modifier and TypeMethodDescriptionstatic QsysAbandonResultqsys_mgisrgi_whitt(double lambda, double mu, int s, double r, Patience patience) Steady-state measures with no waiting-time cdfs and the default truncation.static QsysAbandonResultqsys_mgisrgi_whitt(double lambda, double mu, int s, double r, Patience patience, double[] wPoints, int maxQueue, double tol, String invMethod, int invN) Steady-state measures, with the waiting-time cdfs when times are supplied.
-
Field Details
-
DEFAULT_MAX_QUEUE
public static final int DEFAULT_MAX_QUEUETruncation level used when the waiting room is infinite.- See Also:
-
DEFAULT_TOL
public static final double DEFAULT_TOLRelative tail tolerance for that truncation.- See Also:
-
-
Method Details
-
qsys_mgisrgi_whitt
public static QsysAbandonResult qsys_mgisrgi_whitt(double lambda, double mu, int s, double r, Patience patience) Steady-state measures with no waiting-time cdfs and the default truncation.- Parameters:
lambda- arrival ratemu- service rate of one server, the reciprocal of the mean service times- number of serversr- extra waiting spaces,Double.POSITIVE_INFINITYif unboundedpatience- the patience law- Returns:
- the steady-state measures
-
qsys_mgisrgi_whitt
public static QsysAbandonResult qsys_mgisrgi_whitt(double lambda, double mu, int s, double r, Patience patience, double[] wPoints, int maxQueue, double tol, String invMethod, int invN) Steady-state measures, with the waiting-time cdfs when times are supplied.- Parameters:
lambda- arrival ratemu- service rate of one servers- number of serversr- extra waiting spaces,Double.POSITIVE_INFINITYif unboundedpatience- the patience lawwPoints- times at which to evaluate the waiting-time cdfs, or nullmaxQueue- truncation level used when r is infinitetol- relative tail tolerance for that truncationinvMethod- Laplace inversion method for the cdfsinvN- number of inversion nodes- Returns:
- the steady-state measures
-