LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
solver_mva_polling.h File Reference

The multiclass open polling analyzer (ladder branch 5). More...

Include dependency graph for solver_mva_polling.h:

Go to the source code of this file.

Namespaces

namespace  line
namespace  line::mva

Functions

template<class T>
MvaSolution< T > line::mva::solver_mva_polling_analyzer (const qn::NetworkStruct< T > &L, const MvaOptions &opt)
 Port of solver_mva_polling_analyzer.m.

Detailed Description

The multiclass open polling analyzer (ladder branch 5).

Templated port of matlab/src/solvers/MVA/solver_mva_polling_analyzer.m.

A polling system is a single server that visits each class's buffer in turn, switching over between them. Each CLASS is a queue of the polling model, and the mean waiting time of every class follows from the pseudo-conservation laws of its discipline: EXHAUSTIVE (serve until the buffer empties), GATED (serve exactly what was present at the visit), 1-limited (one job per visit) and DECREMENTING. The polling_qsys_* routines carry those laws; this analyzer builds their two-moment inputs from the arrival, service and switchover distributions and maps the resulting waiting times back onto the per-class [Q,U,R,T] block.

SUPPORTED. EXHAUSTIVE and GATED at any number of servers-of-one; K-limited only at K = 1 (the polling_qsys_1limited law); DECREMENTING. The reference refuses K > 1 and any other discipline, and so does this port. exact is available only for EXHAUSTIVE / GATED with Poisson arrivals at a single server, where the two-moment law is exact.

Arithmetic: TRANSCENDENTAL. The pseudo-conservation laws are field arithmetic, but the input SCVs come from distribution moments that are only defined at a transcendental T.

Definition in file solver_mva_polling.h.