Approximate Mean Value Analysis (MVA) for closed, multiclass queueing networks with K service centers and C customer classes.
This implementation uses Bard and Schweitzer approximation. It is based on the assumption that the queue length at service center k with population set {\bf N}-{\bf 1}_c is approximated with
Q_k(N-1c) ~ (n-1)/n Q_k(N)
where \bf N is a valid population mix, {\bf N}-{\bf 1}_c is the population mix \bf N with one class c customer removed, and n = \sum_c N_c is the total number of requests.
This implementation works for networks with infinite server (IS) and single-server nodes only.
INPUTS
N(c)
number of class c requests in the system (N(c) ≥ 0
).
S(c,k)
mean service time for class c customers at center k
(S(c,k) ≥ 0
).
V(c,k)
average number of visits of class c requests to center
k (V(c,k) ≥ 0
).
m(k)
number of servers at center k. If m(k) < 1
,
then the service center k is assumed to be a delay center
(IS). If m(k) == 1
, service center k is a
regular queueing center (FCFS, LCFS-PR or PS) with a single server
node. If omitted, each service center has a single server. Note
that multiple server nodes are not supported.
Z(c)
class c external delay (Z ≥ 0
). Default is 0.
tol
Stopping tolerance (tol>0
). The algorithm stops if
the queue length computed on two subsequent iterations are less than
tol. Default is 10^{-5}.
iter_max
Maximum number of iterations (iter_max>0
.
The function aborts if convergenge is not reached within the maximum
number of iterations. Default is 100.
OUTPUTS
U(c,k)
If k is a FCFS, LCFS-PR or PS node, then U(c,k)
is the utilization of class c requests on service center
k. If k is an IS node, then U(c,k)
is the
class c traffic intensity at device k,
defined as U(c,k) = X(c)*S(c,k)
R(c,k)
response time of class c requests at service center k.
Q(c,k)
average number of class c requests at service center k.
X(c,k)
class c throughput at service center k.
REFERENCES
This implementation is based on Edward D. Lazowska, John Zahorjan, G. Scott Graham, and Kenneth C. Sevcik, Quantitative System Performance: Computer System Analysis Using Queueing Network Models, Prentice Hall, 1984. http://www.cs.washington.edu/homes/lazowska/qsp/. In particular, see section 7.4.2.2 ("Approximate Solution Techniques"). This implementation is slightly different from the one described above, as it computes the average response times R instead of the residence times.
See also: qncmmva.
The following code
S = [ 1, 1, 1, 1; 2, 1, 3, 1; 4, 2, 3, 3 ]; V = ones(3,4); N = [10 5 1]; m = [1 0 1 1]; [U R Q X] = qncmmvabs(N,S,V,m);
gives an example of how 'qncmmvabs' is used.
Package: queueing