Class Qsys_mmcc_retrial_fp
Port of matlab/src/api/qsys/qsys_mmcc_retrial_fp.m. Customers
arrive at rate lambda to a system of c servers each of rate mu, with no
waiting room; a blocked customer joins an orbit and retries. Under the
assumption that the retrial rate is small relative to the service rate, the
total arrival flow (fresh plus retrial) is approximated by a Poisson process
of rate lambda + r, with r the solution of
r = (lambda + r) B(lambda/mu + r/mu, c),B(a, c) being the Erlang-B blocking probability at offered load a.
With non-persistent customers (Phung-Duc 2019, Sec. 3.2), a blocked fresh customer joins the orbit with probability p and a blocked retrial customer returns to it with probability q. The orbit then sends retrials at the rate
r = lambda p B / (1 - q B), B = B((lambda + r)/mu, c),which is the equation above when p = q = 1. A fresh customer is lost with probability lossProb = B(1-p) + B p (1-q) B/(1-qB), zero when p = q = 1.
References: Cohen (1957); Phung-Duc, "Retrial Queueing Models: A Survey on Theory and Applications", 2019, Eq. (1).
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBlocking probability, orbit-induced rate and iteration count. -
Method Summary
Modifier and TypeMethodDescriptionstatic doubleerlangB(double a, int c) Erlang-B by the recursion B_i = a B_{i-1}/(i + a B_{i-1}), numerically stable.static Qsys_mmcc_retrial_fp.Resultqsys_mmcc_retrial_fp(double lambda, double mu, int c) The fixed point at the reference defaults tol = 1e-10, maxiter = 10000.static Qsys_mmcc_retrial_fp.Resultqsys_mmcc_retrial_fp(double lambda, double mu, int c, double tol, int maxiter) The retrial fixed point.static Qsys_mmcc_retrial_fp.Resultqsys_mmcc_retrial_fp(double lambda, double mu, int c, double tol, int maxiter, double p, double q) The retrial fixed point with non-persistent customers.
-
Method Details
-
qsys_mmcc_retrial_fp
The fixed point at the reference defaults tol = 1e-10, maxiter = 10000. -
qsys_mmcc_retrial_fp
public static Qsys_mmcc_retrial_fp.Result qsys_mmcc_retrial_fp(double lambda, double mu, int c, double tol, int maxiter) The retrial fixed point.- Parameters:
lambda- fresh arrival ratemu- service rate per serverc- number of servers, equal to the capacitytol- convergence tolerance on rmaxiter- iteration cap
-
qsys_mmcc_retrial_fp
public static Qsys_mmcc_retrial_fp.Result qsys_mmcc_retrial_fp(double lambda, double mu, int c, double tol, int maxiter, double p, double q) The retrial fixed point with non-persistent customers.- Parameters:
lambda- fresh arrival ratemu- service rate per serverc- number of servers, equal to the capacitytol- convergence tolerance on rmaxiter- iteration capp- probability that a blocked fresh customer joins the orbitq- probability that a blocked retrial customer stays in the orbit
-
erlangB
public static double erlangB(double a, int c) Erlang-B by the recursion B_i = a B_{i-1}/(i + a B_{i-1}), numerically stable.
-