![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Sample-path Lindley recursion along a tandem of single-server FCFS queues. More...
#include <cstddef>#include <limits>#include <string>#include <vector>#include "line/num/number.h"#include "line/util/error.h"#include "line/util/matrix.h"Go to the source code of this file.
Classes | |
| struct | line::qsys::TandemLindleyResult< T > |
| Mirrors the struct MATLAB returns from qsys_tandem_lindley. More... | |
Namespaces | |
| namespace | line |
| namespace | line::qsys |
Functions | |
| template<class T> | |
| TandemLindleyResult< T > | line::qsys::qsys_tandem_lindley (const std::vector< T > &A, const Matrix< T > &S, const std::vector< T > &W0=std::vector< T >()) |
| Sample-path Lindley recursion along a tandem of single-server FCFS queues. | |
Sample-path Lindley recursion along a tandem of single-server FCFS queues.
Templated port of matlab/src/api/qsys/qsys_tandem_lindley.m. No JAR counterpart. Given the interarrival times A of N customers at the first station and the (N x K) service times S, it replays
W(n+1,k) = max(W(n,k) + S(n,k) - G(n,k), 0)
where G(n,k) is the interarrival gap SEEN AT STATION k. The coupling that makes this a tandem rather than K independent queues is the gap update
G(n,k+1) = max(G(n,k) - W(n,k) - S(n,k), 0) + S(n+1,k),
the interdeparture time of station k: customer n+1 either catches up with customer n, in which case the gap collapses to the service time of n+1 at station k, or it does not, and the residual gap survives. Nothing here is distributional, so the recursion holds for arbitrary service laws and is the reference any conditional-moment approximation is checked against.
The last customer has no successor, so its row of G stays unset; MATLAB leaves it NaN and the port does the same rather than filling it with a value that has no meaning.
Reference: S. Palomo, J. Pender, "Learning the Tandem Network Lindley Recursion", Proc. Winter Simulation Conference, 2021. Registered in .citations() as 'tandemlindley'.
ARITHMETIC: additions, subtractions and comparisons only, so the exact instantiation replays the same sample path with no rounding at all.
Definition in file qsys_tandem_lindley.h.