Class Qsys_tandem_ub_ciucu
Port of matlab/src/api/qsys/qsys_tandem_ub_ciucu.m. Both stations serve the
same hyperexponential law Y, Z ~ sum_i p_i Exp(mu_i), a scalar
p = 1 giving exponential service, and the arrivals are renewal with a
light-tailed interarrival time supplied through its Laplace-Stieltjes
transform E[e^{-s X}].
With theta the positive root of E[e^{theta (Y-X)}] = 1 and
alpha = E[X e^{-theta X}], the test function
gamma(u,v) = 1{0<=u<=v} [1 - A e^{-theta u} - (B + C u + D v) e^{-theta v}]
satisfies the integral inequality of Theorem 1(b) of the reference once the five sufficient conditions of its Lemma 4 fix A, B, C and D; Corollary 2 then turns gamma into the tail bounds returned here. The two exponentials mix a polynomial of degree one in x, which is what lets the bound follow the concave bend of the tail on a linear-log scale where a purely exponential bound cannot.
In the M/M/1 -> ./M/1 case the five inequalities hold as equalities, so
gamma is the exact joint distribution and both bounds are exact:
P(S > x) = (1 + theta x) e^{-theta x} and
P(W > x) = (1 - 2 theta^2/(mu(mu+theta)) + x(mu-theta)theta/(mu+theta)) e^{-theta x}.
Away from it the bound stays sharp: against an exact CTMC reference for the
Erlang(2)/M/1 -> ./M/1 tandem it is within 2% at P(S>x) = 1e-2 and within
0.6% at 5e-10, with the correct asymptotic slope
theta^2/(mu(1-alpha mu)). Accuracy degrades with service variability,
to about a factor of two at CV(Y) = 2.
Reference: F. Ciucu, S. Mehri, "On the Distribution of Sojourn Times in Tandem Queues", Proc. ACM Meas. Anal. Comput. Syst. 9(2), Article 27, 2025 (ACM SIGMETRICS 2025). Registered in .citations() as 'tandemub'.
- Since:
- LINE 3.1.0
-
Method Summary
Modifier and TypeMethodDescriptionstatic QsysTandemUbResultqsys_tandem_ub_ciucu(double[] x, DoubleUnaryOperator lst, double[] p, double[] mu) Bounds with the derivative of the transform obtained numerically.static QsysTandemUbResultqsys_tandem_ub_ciucu(double[] x, DoubleUnaryOperator lst, double[] p, double[] mu, DoubleUnaryOperator dlst) Bounds with an analytic derivative of the transform.
-
Method Details
-
qsys_tandem_ub_ciucu
public static QsysTandemUbResult qsys_tandem_ub_ciucu(double[] x, DoubleUnaryOperator lst, double[] p, double[] mu) Bounds with the derivative of the transform obtained numerically.- Parameters:
x- thresholds at which the tails are bounded, nonnegativelst- interarrival transform,s -> E[e^{-s X}]for s >= 0p- service phase probabilities, nonnegative and summing to onemu- service phase rates, positive- Returns:
- the tail bounds and the coefficients behind them
-
qsys_tandem_ub_ciucu
public static QsysTandemUbResult qsys_tandem_ub_ciucu(double[] x, DoubleUnaryOperator lst, double[] p, double[] mu, DoubleUnaryOperator dlst) Bounds with an analytic derivative of the transform.- Parameters:
x- thresholds at which the tails are bounded, nonnegativelst- interarrival transform,s -> E[e^{-s X}]for s >= 0p- service phase probabilities, nonnegative and summing to onemu- service phase rates, positivedlst-s -> E[X e^{-s X}], minus the derivative of lst; null to obtain it by a Richardson-extrapolated central difference, which costs four extra transform evaluations and loses roughly four digits- Returns:
- the tail bounds and the coefficients behind them
-