In queueing theory, a discipline within the mathematical theory of probability, an M/G/1 queue is a queue model where arrivals are Markovian (modulated by a Poisson process), service times have a General distribution and there is a single server.[1] The model name is written in Kendall's notation, and is an extension of the M/M/1 queue, where service times must be exponentially distributed. The classic application of the M/G/1 queue is to model performance of a fixed head hard disk.[2]
Model definition
A queue represented by a M/G/1 queue is a stochastic process whose state space is the set {0,1,2,3...}, where the value corresponds to the number of customers in the queue, including any being served. Transitions from state i to i + 1 represent the arrival of a new customer: the times between such arrivals have an exponential distribution with parameter λ. Transitions from state i to i − 1 represent a customer who has been served, finishing being served and departing: the length of time required for serving an individual customer has a general distribution function. The lengths of times between arrivals and of service periods are random variables which are assumed to be statistically independent.
Scheduling policies
Customers are typically served on a first-come, first-served basis, other popular scheduling policies include
processor sharing where all jobs in the queue share the service capacity between them equally
last-come, first served without preemption where a job in service cannot be interrupted
last-come, first served with preemption where a job in service is interrupted by later arrivals, but work is conserved[3]
generalized foreground-background (FB) scheduling also known as least-attained-service where the jobs which have received least processing time so far are served first and jobs which have received equal service time share service capacity using processor sharing[3]
shortest job first without preemption (SJF) where the job with the smallest size receives service and cannot be interrupted until service completes
preemptive shortest job first where at any moment in time the job with the smallest original size is served[4]
shortest remaining processing time (SRPT) where the next job to serve is that with the smallest remaining processing requirement[5]
Service policies are often evaluated by comparing the mean sojourn time in the queue. If service times that jobs require are known on arrival then the optimal scheduling policy is SRPT.[6]:296
Policies can also be evaluated using a measure of fairness.[7]
Queue length
Pollaczek–Khinchine method
The probability generating function of the stationary queue length distribution is given by the Pollaczek–Khinchine transform equation[2]
\( \pi (z)={\frac {(1-z)(1-\rho )g(\lambda (1-z))}{g(\lambda (1-z))-z}} \)
where g(s) is the Laplace transform of the service time probability density function.[8] In the case of an M/M/1 queue where service times are exponentially distributed with parameter μ, g(s) = μ/(μ + s).
This can be solved for individual state probabilities either using by direct computation or using the method of supplementary variables. The Pollaczek–Khinchine formula gives the mean queue length and mean waiting time in the system.[9][10]
Matrix analytic method
Main article: Matrix analytic method
Consider the embedded Markov chain of the M/G/1 queue, where the time points selected are immediately after the moment of departure. The customer being served (if there is one) has received zero seconds of service. Between departures, there can be 0, 1, 2, 3,... arrivals. So from state i the chain can move to state i – 1, i, i + 1, i + 2, ....[11] The embedded Markov chain has transition matrix
\( {\displaystyle P={\begin{pmatrix}a_{0}&a_{1}&a_{2}&a_{3}&a_{4}&\cdots \\a_{0}&a_{1}&a_{2}&a_{3}&a_{4}&\cdots \\0&a_{0}&a_{1}&a_{2}&a_{3}&\cdots \\0&0&a_{0}&a_{1}&a_{2}&\cdots \\0&0&0&a_{0}&a_{1}&\cdots \\\vdots &\vdots &\vdots &\vdots &\vdots &\ddots \end{pmatrix}}} \)
where
\( {\displaystyle a_{v}=\int _{0}^{\infty }e^{-\lambda u}{\frac {(\lambda u)^{v}}{v!}}{\text{d}}F(u)~{\text{ for }}v\geq 0} \)
and F(u) is the service time distribution and λ the Poisson arrival rate of jobs to the queue.
Markov chains with generator matrices or block matrices of this form are called M/G/1 type Markov chains,[12] a term coined by M. F. Neuts.[13][14]
An M/G/1 queue has a stationary distribution if and only if the traffic intensity \( {\displaystyle \rho =\lambda \mathbb {E} (G)} \) is less than 1, in which case the unique such distribution has probability-generating function:[15]
\( {\displaystyle G(s)={\frac {(1-\rho )(1-s)}{1-s/M_{S}(\lambda (s-1))}}} \)
where M S {\displaystyle M_{S}} M_{S} is the moment-generating function of a general service time. The stationary distribution of an M/G/1 type Markov model can be computed using the matrix analytic method.[16]
Busy period
The busy period is the time spent in states 1, 2, 3,... between visits to the state 0. The expected length of a busy period is 1/(μ−λ) where 1/μ is the expected length of service time and λ the rate of the Poisson process governing arrivals.[17] The busy period probability density function \( \phi (s) \) can be shown to obey the Kendall functional equation[18][19]:92
\( {\displaystyle \phi (s)=g[s+\lambda -\lambda \phi (s)]} \)
where as above g is the Laplace–Stieltjes transform of the service time distribution function. This relationship can only be solved exactly in special cases (such as the M/M/1 queue), but for any s the value of ϕ(s) can be calculated and by iteration with upper and lower bounds the distribution function numerically computed.[20]
Waiting/response time
Writing W*(s) for the Laplace–Stieltjes transform of the waiting time distribution,[21] is given by the Pollaczek–Khinchine transform as
\( W^{\ast }(s)={\frac {(1-\rho )sg(s)}{s-\lambda (1-g(s))}} \)
where g(s) is the Laplace–Stieltjes transform of service time probability density function.
Arrival theorem
As the arrivals are determined by a Poisson process, the arrival theorem holds.
Multiple servers
Main article: M/G/k queue
Many metrics for the M/G/k queue with k servers remain an open problem, though some approximations and bounds are known.
See also
M/M/1 queue
M/M/c queue
References
Gittins, John C. (1989). Multi-armed Bandit Allocation Indices. John Wiley & Sons. p. 77. ISBN 0471920592.
Harrison, Peter; Patel, Naresh M. (1992). Performance Modelling of Communication Networks and Computer Architectures. Addison–Wesley.
Harchol-Balter, M. (2012). "Scheduling: Preemptive, Non-Size-Based Policies". Performance Modeling and Design of Computer Systems. p. 482. doi:10.1017/CBO9781139226424.038. ISBN 9781139226424.
Harchol-Balter, M. (2012). "Scheduling: Preemptive, Size-Based Policies". Performance Modeling and Design of Computer Systems. p. 508. doi:10.1017/CBO9781139226424.040. ISBN 9781139226424.
Harchol-Balter, M. (2012). "Scheduling: SRPT and Fairness". Performance Modeling and Design of Computer Systems. p. 518. doi:10.1017/CBO9781139226424.041. ISBN 9781139226424.
Gautam, Natarajan (2012). Analysis of Queues: Methods and Applications. CRC Press. ISBN 9781439806586.
Wierman, A.; Harchol-Balter, M. (2003). "Classifying scheduling policies with respect to unfairness in an M/GI/1" (PDF). ACM SIGMETRICS Performance Evaluation Review. 31: 238. doi:10.1145/885651.781057.
Peterson, G. D.; Chamberlain, R. D. (1996). "Parallel application performance in a shared resource environment". Distributed Systems Engineering. 3: 9–19. doi:10.1088/0967-1846/3/1/003.
Pollaczek, F. (1930). "Über eine Aufgabe der Wahrscheinlichkeitstheorie". Mathematische Zeitschrift. 32: 64–75. doi:10.1007/BF01194620.
Khintchine, A. Y (1932). "Mathematical theory of a stationary queue". Matematicheskii Sbornik. 39 (4): 73–84. Retrieved 2011-07-14.
Stewart, William J. (2009). Probability, Markov chains, queues, and simulation. Princeton University Press. p. 510. ISBN 0-691-14062-6.
Neuts, Marcel F. (1981). Matrix-geometric solutions in stochastic models: an algorithmic approach (Johns Hopkins Studies in Mathematical Sciences). Johns Hopkins University Press. p. 2. ISBN 0-486-68342-7.
Neuts, M. F . (1989). "Structured Stochastic Matrices of M/G/1 Type and Their Applications". New York: Marcel Dekk.
Meini, B. (1998). "Solving m/g/l type markov chains: Recent advances and applications". Communications in Statistics. Stochastic Models. 14: 479–496. doi:10.1080/15326349808807483.
Grimmett, G. R.; Stirzaker, D. R. (1992). Probability and Random Processes (second ed.). Oxford University Press. p. 422. ISBN 0198572220.
Bini, D. A.; Latouche, G.; Meini, B. (2005). "Numerical Methods for Structured Markov Chains". doi:10.1093/acprof:oso/9780198527688.001.0001. ISBN 9780198527688.
Ross, Sheldon M.; Seshadri, Sridhar (1999). "Hitting time in an M/G/1 queue" (PDF). Journal of Applied Probability. 36: 934–940. doi:10.1239/jap/1029349991. JSTOR 3215453.
Abate, J.; Choudhury, G. L.; Whitt, W. (1995). "Calculating the M/G/1 busy-period density and LIFO waiting-time distribution by direct numerical transform inversion" (PDF). Operations Research Letters. 18 (3): 113–119. doi:10.1016/0167-6377(95)00049-6.
Mitrani, I. (1997). "Queueing systems: average performance". Probabilistic Modelling. Cambridge University Press. pp. 74–121. doi:10.1017/CBO9781139173087.004. ISBN 9781139173087.
Abate, J.; Whitt, W. (1992). "Solving probability transform functional equations for numerical inversion" (PDF). Operations Research Letters. 12 (5): 275–281. doi:10.1016/0167-6377(92)90085-H.
Daigle, John N. (2005). "The Basic M/G/1 Queueing System". Queueing Theory with Applications to Packet Telecommunication. pp. 159–223. doi:10.1007/0-387-22859-4_5. ISBN 0-387-22857-8.
vte
Queueing theory
Single queueing nodes
D/M/1 queue M/D/1 queue M/D/c queue M/M/1 queue
Burke's theorem M/M/c queue M/M/∞ queue M/G/1 queue
Pollaczek–Khinchine formula Matrix analytic method M/G/k queue G/M/1 queue G/G/1 queue
Kingman's formula Lindley equation Fork–join queue Bulk queue
Arrival processes
Poisson process Markovian arrival process Rational arrival process
Queueing networks
Jackson network
Traffic equations Gordon–Newell theorem
Mean value analysis Buzen's algorithm Kelly network G-network BCMP network
Service policies
FIFO LIFO Processor sharing Round-robin Shortest job first Shortest remaining time
Key concepts
Continuous-time Markov chain Kendall's notation Little's law Product-form solution
Balance equation Quasireversibility Flow-equivalent server method Arrival theorem Decomposition method Beneš method
Limit theorems
Fluid limit Mean field theory Heavy traffic approximation
Reflected Brownian motion
Extensions
Fluid queue Layered queueing network Polling system Adversarial queueing network Loss network Retrial queue
Information systems
Data buffer Erlang (unit) Erlang distribution Flow control (data) Message queue Network congestion Network scheduler Pipeline (software) Quality of service Scheduling (computing) Teletraffic engineering
Category Category
Stochastic processes
Discrete time
Bernoulli process Branching process Chinese restaurant process Galton–Watson process Independent and identically distributed random variables Markov chain Moran process Random walk
Loop-erased Self-avoiding Biased Maximal entropy
Continuous time
Additive process Bessel process Birth–death process
pure birth Brownian motion
Bridge Excursion Fractional Geometric Meander Cauchy process Contact process Continuous-time random walk Cox process Diffusion process Empirical process Feller process Fleming–Viot process Gamma process Geometric process Hunt process Interacting particle systems Itô diffusion Itô process Jump diffusion Jump process Lévy process Local time Markov additive process McKean–Vlasov process Ornstein–Uhlenbeck process Poisson process
Compound Non-homogeneous Schramm–Loewner evolution Semimartingale Sigma-martingale Stable process Superprocess Telegraph process Variance gamma process Wiener process Wiener sausage
Both
Branching process Galves–Löcherbach model Gaussian process Hidden Markov model (HMM) Markov process Martingale
Differences Local Sub- Super- Random dynamical system Regenerative process Renewal process Stochastic chains with memory of variable length White noise
Fields and other
Dirichlet process Gaussian random field Gibbs measure Hopfield model Ising model
Potts model Boolean network Markov random field Percolation Pitman–Yor process Point process
Cox Poisson Random field Random graph
Time series models
Autoregressive conditional heteroskedasticity (ARCH) model Autoregressive integrated moving average (ARIMA) model Autoregressive (AR) model Autoregressive–moving-average (ARMA) model Generalized autoregressive conditional heteroskedasticity (GARCH) model Moving-average (MA) model
Financial models
Black–Derman–Toy Black–Karasinski Black–Scholes Chen Constant elasticity of variance (CEV) Cox–Ingersoll–Ross (CIR) Garman–Kohlhagen Heath–Jarrow–Morton (HJM) Heston Ho–Lee Hull–White LIBOR market Rendleman–Bartter SABR volatility Vašíček Wilkie
Actuarial models
Bühlmann Cramér–Lundberg Risk process Sparre–Anderson
Queueing models
Bulk Fluid Generalized queueing network M/G/1 M/M/1 M/M/c
Properties
Càdlàg paths Continuous Continuous paths Ergodic Exchangeable Feller-continuous Gauss–Markov Markov Mixing Piecewise deterministic Predictable Progressively measurable Self-similar Stationary Time-reversible
Limit theorems
Central limit theorem Donsker's theorem Doob's martingale convergence theorems Ergodic theorem Fisher–Tippett–Gnedenko theorem Large deviation principle Law of large numbers (weak/strong) Law of the iterated logarithm Maximal ergodic theorem Sanov's theorem
Inequalities
Burkholder–Davis–Gundy Doob's martingale Kunita–Watanabe
Tools
Cameron–Martin formula Convergence of random variables Doléans-Dade exponential Doob decomposition theorem Doob–Meyer decomposition theorem Doob's optional stopping theorem Dynkin's formula Feynman–Kac formula Filtration Girsanov theorem Infinitesimal generator Itô integral Itô's lemma Karhunen–Loève_theorem Kolmogorov continuity theorem Kolmogorov extension theorem Lévy–Prokhorov metric Malliavin calculus Martingale representation theorem Optional stopping theorem Prokhorov's theorem Quadratic variation Reflection principle Skorokhod integral Skorokhod's representation theorem Skorokhod space Snell envelope Stochastic differential equation
Tanaka Stopping time Stratonovich integral Uniform integrability Usual hypotheses Wiener space
Classical Abstract
Disciplines
Actuarial mathematics Control theory Econometrics Ergodic theory Extreme value theory (EVT) Large deviations theory Mathematical finance Mathematical statistics Probability theory Queueing theory Renewal theory Ruin theory Signal processing Statistics System on Chip design Stochastic analysis Time series analysis Machine learning
Undergraduate Texts in Mathematics
Graduate Studies in Mathematics
Hellenica World - Scientific Library
Retrieved from "http://en.wikipedia.org/"
All text is available under the terms of the GNU Free Documentation License