![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Mean, variance and peak Age of Information of an M/M/1 FCFS queue. More...
Go to the source code of this file.
Namespaces | |
| namespace | line |
| namespace | line::aoi |
Functions | |
| template<class T> | |
| AoiResult< T > | line::aoi::aoi_fcfs_mm1 (const T &lambda, const T &mu) |
| Mean, variance and peak Age of Information of an M/M/1 FCFS queue. | |
Mean, variance and peak Age of Information of an M/M/1 FCFS queue.
Templated port of matlab/src/api/aoi/aoi_fcfs_mm1.m, cross-checked against jar/src/main/java/jline/api/aoi/Aoi_fcfs_mm1.java (identical).
E[A] = (1/mu)(1 + 1/rho + rho^2/(1-rho)) E[Apeak] = (1/mu)(1 + 1/rho + rho/(1-rho)) E[A^2] = (2/mu^2)(1 - rho - rho^3 + 4 rho^4 - 2 rho^5)/(rho^2 (1-rho)^2) Var[A] = E[A^2] - E[A]^2
from Inoue, Masuyama, Takine and Tanaka (IEEE Trans. IT 65(12), 2019). Every quantity is a rational function of rho, so the triple is exact in the field. This is the reference AoI closed form: E[A] has an interior minimum in rho near 0.53, and the exact instantiation locates it as the root of a polynomial rather than by a rounded search.
MATLAB clamps a negative variance to zero as a numerical safety net; the port keeps the clamp so the two agree, but note that in exact arithmetic the clamp can never fire, because E[A^2] - E[A]^2 is then evaluated without cancellation error.
Definition in file aoi_fcfs_mm1.h.