![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Service variability parameter of the Robust Queueing Theory (RQT) framework. More...
#include <cstddef>#include <string>#include "line/api/qsys/qsys_types.h"#include "line/num/number.h"#include "line/util/error.h"Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::qsys |
Functions | |
| template<class T> | |
| T | line::qsys::qsys_gigk_rqt_gamma (const T &rho, const T &mu, const T &Gamma_a, const T &sigma_s, std::size_t k, const T &alpha_a, const std::string ®ime="independent") |
| Service variability parameter of the Robust Queueing Theory (RQT) framework. | |
Service variability parameter of the Robust Queueing Theory (RQT) framework.
Templated port of matlab/src/api/qsys/qsys_gigk_rqt_gamma.m, cross-checked against jar/src/main/java/jline/api/qsys/Qsys_gigk_rqt_gamma.java.
The adaptation of Section 7.1 turns the first two moments into an uncertainty set:
Gamma_s = (2 (theta0 + theta1 sigma_s^2/k + theta2 Gamma_a^2 rho^2 k))^((a-1)/a)
with (theta0,theta1,theta2) regressed so that the worst-case system time of Theorem 3 approximates the MEAN system time of the corresponding stochastic queue. The arrival side needs no adaptation: Gamma_a = sigma_a for an external renewal stream. Since the last term cancels Gamma_a at alpha = 2, the adaptation acts on the sum Gamma_a + Gamma_s/k^(1/alpha) that Theorem 3 reads.
THE FACTOR 2 IS NOT IN THE PRINTED FORMULA and is restored here. Section 7.1 states that the functional form is motivated by Kingman's bound, which the alpha=2 bound of Theorem 3 reproduces when (Gamma_a+Gamma_s)^2 = 2(sigma_a^2+sigma_s^2); the published thetas are all near unity, i.e. corrections to that bound rather than a substitute for its factor 2. Dropping the factor puts M/M/1 about 40% BELOW its exact mean system time at rho = 0.9, contradicting the errors of at most 9.5% that Tables 2-3 report; restoring it gives +4.7%.
CAUTION: the form is not dimensionally homogeneous, since theta0 is an additive constant on a scale of variances, so it is only valid in the time unit the regression was run in. It is evaluated here in units of the mean service time, 1/mu = 1, and converted back.
ARITHMETIC. A real exponent makes this transcendental.
Reference: C. Bandi, D. Bertsimas, N. Youssef (2015). Robust Queueing Theory. Operations Research 63(3), 676-700, Section 7.1 and Table 1.
Definition in file qsys_gigk_rqt_gamma.h.