Mean Value Analysis
   HOME

TheInfoList



OR:

In
queueing theory Queueing theory is the mathematical study of waiting lines, or queues. A queueing model is constructed so that queue lengths and waiting time can be predicted. Queueing theory is generally considered a branch of operations research because the ...
, a discipline within the mathematical
theory of probability Probability theory is the branch of mathematics concerned with probability. Although there are several different probability interpretations, probability theory treats the concept in a rigorous mathematical manner by expressing it through a set o ...
, mean value analysis (MVA) is a recursive technique for computing expected queue lengths, waiting time at queueing nodes and throughput in equilibrium for a closed separable system of queues. The first approximate techniques were published independently by Schweitzer and Bard, followed later by an exact version by Lavenberg and Reiser published in 1980. It is based on the arrival theorem, which states that when one customer in an ''M''-customer closed system arrives at a service facility he/she observes the rest of the system to be in the equilibrium state for a system with ''M'' − 1 customers.


Problem setup

Consider a closed queueing network of ''K''
M/M/1 queue In queueing theory, a discipline within the mathematical theory of probability, an M/M/1 queue represents the queue length in a system having a single server, where arrivals are determined by a Poisson process and job service times have an expon ...
s, with ''M'' customers circulating in the system. Suppose that the customers are indistinguishable from each other, so that the network has a single class of customers. To compute the mean queue length and waiting time at each of the nodes and throughput of the system we use an iterative algorithm starting with a network with 0 customers. Write ''μ''''i'' for the service rate at node ''i'' and ''P'' for the customer routing matrix where element ''p''''ij'' denotes the probability that a customer finishing service at node ''i'' moves to node ''j'' for service. To use the algorithm we first compute the visit ratio row vector v, a vector such that v = v P. Now write ''L''''i''(''n'') for the mean number of customer at queue ''i'' when there are a total of ''n'' customers in the system (this includes the job currently being served at queue ''i'') and ''W''''j''(''n'') for the mean time spent by a customer in queue ''i'' when there are a total of ''n'' customers in the system. Denote the throughput of a system with ''m'' customers by ''λ''''m''.


Algorithm

The algorithm starts with an empty network (zero customers), then increases the number of customers by 1 at each iteration until there are the required number (''M'') of customers in the system. To initialise, set ''L''''k''(0) = 0 for ''k'' = 1,...,''K''. (This sets the average queue length in a system with no customers to zero at all nodes.) Repeat for ''m'' = 1,...,''M'': :1. For ''k'' = 1, ..., ''K'' compute the waiting time at each node using the arrival theorem :::W_k(m) = \frac. :2. Then compute the system throughput using Little's law :::\lambda_m=\frac. :3. Finally, use Little's law applied to each queue to compute the mean queue lengths for ''k'' = 1, ..., ''K'' :::L_k(m)=v_k \lambda_m W_k(m). End repeat.


Bard–Schweitzer method

The Bard–Schweitzer approximation estimates the average number of jobs at node to be :L_k(m-1) \approx \frac L_k(m) which is a linear interpolation. From the above formulas, this approximation yields fixed-point relationships which can be solved numerically. This iterative approach often goes under the name of approximate MVA (AMVA) and it is typically faster than the recursive approach of MVA.


Pseudocode


Multiclass networks

In the case of multiclass networks with ''R'' classes of customers, each queue ''k'' can feature different service rates ''μ''''k,r'' for each job class ''r=1,...,R'', although certain restrictions exist in the case of first-come first-served stations due to the assumptions of the
BCMP theorem In queueing theory, a discipline within the mathematical theory of probability, a BCMP network is a class of queueing network for which a product-form equilibrium distribution exists. It is named after the authors of the paper where the network was ...
in the multiclass case. The waiting time ''W''''k,r'' experienced by class-''r'' jobs at queue ''k'' can still be related to the total mean queue-length at node ''k'' using a generalization of the arrival theorem :::W_(\mathbb) = \frac. where \mathbb=(m_1,\ldots,m_R) is a vector of customer population for the ''R'' classes and 1_r subtracts one from the ''r''-th element of \mathbb, assuming that m_r\geq 1. For networks with a single customer class the MVA algorithm is very fast and time taken grows linearly with the number of customers and number of queues. However, in multiclass models the number of multiplications and additions and the storage requirements for MVA grow exponentially with the number of customer classes. Practically, the algorithm works well for 3-4 customer classes, although this generally depends on the implementation and the structure of the model. For example, the Tree-MVA method can scale to larger models if the routing matrix is sparse. Exact values for mean performance metrics can be obtained in large models using the ''method of moments'', which requires log-quadratic time. The method of moments can solve in practice models with up to 10 classes of customers or sometimes larger, which are typically inaccessible by means of exact MVA. This technique however does not use the arrival theorem and relies on solving systems of linear equations involving the
normalizing constant The concept of a normalizing constant arises in probability theory and a variety of other areas of mathematics. The normalizing constant is used to reduce any probability function to a probability density function with total probability of one. ...
of state probabilities for the queueing network. Approximate MVA (AMVA) algorithms, such as the Bard-Schweitzer method, offer instead an alternative solution technique that provides low complexity also on multiclass networks and typically deliver highly accurate results.


Extensions

The mean value analysis algorithm has been applied to a class of
PEPA Performance Evaluation Process Algebra (PEPA) is a stochastic process algebra designed for modelling computer and communication systems introduced by Jane Hillston in the 1990s. The language extends classical process algebras such as Robin Milne ...
models describing queueing networks and the performance of a
key distribution center {{cleanup, date=November 2011 In cryptography, a key distribution center (KDC) is part of a cryptosystem intended to reduce the risks inherent in exchanging keys. KDCs often operate in systems within which some users may have permission to use ce ...
.


Software


JMVA
a tool written in
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
which implements MVA.
queueing
a library for
GNU Octave GNU Octave is a high-level programming language primarily intended for scientific computing and numerical computation. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a langu ...
which includes MVA.
Line
a MATLAB toolbox that includes exact and approximate MVA algorithms.


See also

*
Queueing theory Queueing theory is the mathematical study of waiting lines, or queues. A queueing model is constructed so that queue lengths and waiting time can be predicted. Queueing theory is generally considered a branch of operations research because the ...


References


External links


J. Virtamo: Queuing networks
Handout from Helsinki Tech gives good overview of Jackson's Theorem and MVA.
Simon Lam: A simple derivation of the MVA algorithm
Shows relationship between
Buzen's algorithm In queueing theory, a discipline within the mathematical theory of probability, Buzen's algorithm (or convolution algorithm) is an algorithm for calculating the normalization constant G(''N'') in the Gordon–Newell theorem. This method was first p ...
and MVA. {{Queueing theory Queueing theory