Queing Theory
Total Page:16
File Type:pdf, Size:1020Kb
QUEUING THEORY Jaroslav Sklenar Department of Statistics and Operations Research University of Malta Contents Introduction 1 Elements of Queuing Systems 2 Kendall Classification 3 Birth and Death Processes 4 Poisson Process 4.1 Merging and Splitting Poisson Processes 4.2 Model M/G/ 5 Model M/M/1 5.1 PASTA 6 General Results 6.1 Markovian Systems with State Dependent Rates 7 Model with Limited Capacity 8 Multichannel Model 9 Model with Limited Population 9.1 Model with Spares 10 Other Markovian Models 10.1 Multichannel with Limited Capacity and Limited Population 10.2 Multichannel with Limited Capacity and Unlimited Population 10.3 Erlang’s Loss Formula 10.4 Model with Unlimited Service 11 Model M/G/1 12 Simple Non-Markovian Models 13 Queuing Networks 13.1 Feed Forward Networks 13.2 Open Jackson Networks 13.3 Closed Jackson Networks 14 Selected Advanced Models 14.1 State Dependent Rates Generalized 14.2 Impatience 14.3 Bulk Input 14.4 Bulk Service 14.5 Systems with Priorities 14.6 Model G/M/1 15 Other Results and Methods References Appendices Introduction This text is supposed to be used in courses oriented to basic theoretical background and practical application of most important results of Queuing Theory. The assumptions are always clearly explained, but some proofs and derivations are either presented in appendices or skipped. After reading this text, the reader is supposed to understand the basic ideas, and to be able to apply the theoretical results in solving practical problems. Symbols used in this text are unified with the book [1]. Acknowledgement: Many thanks go to Ms. Nadia Tagliaferro who wrote down many examples and derivations presented during my lectures. Due to her hard work the text is now more complete and easier to understand. 1 Elements of Queuing Systems The following figure shows the basic parts of a single queue queuing system: Population of Customers Arrival Queue Service Output Population of Customers can be considered either limited or unlimited. Unlimited population is an abstraction used in theoretical models of systems with a large number of possible customers (a bank on a busy street, a motorway petrol station). In unlimited population systems the number of customers in the system does not affect the arrival process. Example of a limited population may be a number of processes to be run (served) by a computer or a certain number of machines to be repaired by a service man. In limited population systems the number of customers in the system affects the arrival (more customers in the system means less frequent arrivals; if all are in there are no arrivals at all). It is necessary to take the term “customer” very generally. Customers may be people, machines of various nature, computer processes, telephone calls, data packets, manufactured components, etc. Arrival defines the way customers enter the system. Mostly customers arrive randomly with random intervals between two adjacent arrivals. Typically the arrival is described by a random distribution of intervals also called Arrival Pattern. Models exist both for single and batch (bulk) arrivals. Queue represents customers waiting for service (of course the queue may be empty). Typically the customers being served are considered not to be in the queue. Sometimes the customers form a queue literally (people waiting in a line for a bank teller). Sometimes the 2 queue is an abstraction (planes waiting for a runway to land, machines waiting for a repair). There are two important properties of a queue: Maximum Size and Queuing Discipline. Maximum Queue Size is the maximum number of customers that can wait in the queue. System Capacity is the maximum number of customers in the system (maximum queue size plus the number of service channels). Queue is always limited, but some theoretical models assume an unlimited queue length. If the queue length is limited, some customers are forced to renounce without being served. Queuing Discipline represents the way the queue is organised (rules of inserting and removing customers to/from the queue). There are these typical ways: 1) FIFO (First In First Out) also called FCFS (First Come First Serve) - orderly queue. 2) LIFO (Last In First Out) also called LCFS (Last Come First Serve) - stack. 3) SIRO (Serve In Random Order). 4) Priority Queue that may be viewed as a collection of FIFO queues for various priorities. 5) Many other more complex queuing methods that typically change the customer’s position in the queue according to the time spent already in the queue, expected service duration, and/or priority. These methods are typical for computer multi-access systems. Many quantitative parameters (like average queue length, average time spent in the system) do not depend on the queuing discipline. That’s why most models either do not take the queuing discipline into account at all or assume the normal FIFO queue. In fact if there are no priorities the most important parameter that depends on the queuing discipline is the variance of the waiting time. There is this general rule (that may be used for example to verify results of simulation experiments): The two extreme values of the waiting time variance are for the FIFO queue (minimum) and the LIFO queue (maximum). Theoretical models (except priorities and networks) assume only one queue. This is not considered as a serious limiting factor because practical systems with more queues (bank with several tellers with separate queues) may be viewed as a system with one queue, because the customers always select the shortest queue. Of course, it is assumed that the customers leave after being served. Systems with more queues (and more channels) where the customers may be served more times are called Queuing Networks. Service represents some activity that takes time and that the customers ask and possibly wait for. Again take it very generally. It may be a real service carried on persons or machines, but it may be a CPU time slice, connection created for a telephone call, being shot down for an enemy plane, etc. Typically a service takes random time. Theoretical models are based on random distribution of service duration also called Service Pattern. Another important parameter is the number of servers that are called channels. Systems with one channel only are called Single Channel Systems; systems with more channels are called Multichannel Systems. Theoretical models assume that the channels are all equal and the load is distributed evenly. Similarly to arrival there are models for single and batch services. Output represents the way customers leave the system. Output is mostly ignored by theoretical models, but sometimes the customers leaving the server enter the queue again (“round robin” time-sharing systems). Also in limited population models leaving customers are assumed to ask again (typically after some random time) for service. 3 Queuing Theory is a collection of mathematical models of various queuing systems that take as inputs parameters of the above elements and that provide quantitative effectiveness parameters describing the system performance. Because of random nature of processes involved; queuing theory is rather demanding and most models are based on very strong assumptions (not always satisfied in practice). Many systems (especially queuing networks) are not soluble at all, so the only feasible technique that may be applied for their analysis is simulation. Nevertheless models of queuing systems are practically very important because of the typical trade-off between various costs of providing service and the costs associated with waiting for the service (or leaving the system without being served). High quality fast service is expensive, but costs caused by customers waiting in the queue are minimum. On the other hand long queues may cost a lot because customers (machines e.g.) do not work while waiting in the queue or customers leave because of long queues. So a typical problem is to find an optimum system configuration (e.g. the optimum number of channels). The solution may be found by applying queuing theory or by simulation. From the Optimization theory point of view, systems optimized by using queuing theory mostly don’t provide a continuous objective function. Typically there are several configurations and the problem is to select the best one. 2 Kendall Classification The Kendall classification of queuing systems and their models (1953) exists in several modifications. The one used in [1] is based on 5 symbols: A/B/X/Y/Z Where: A is the arrival pattern (distribution of intervals between successive arrivals). B is the service pattern (distribution of service duration). X is the number of parallel service channels. Y is the restriction on system capacity. Omitted for unlimited queues. Z is the queue discipline (FIFO, LIFO, ...). Omitted for FIFO or if not specified. Sometimes another symbol is added for a limited population size (number of possible customers). These symbols are used for arrival and service patterns: M is the exponential distribution of intervals between arrivals or service duration respectively (M comes from the adjective Markovian). Ek is the Erlang type k distribution of intervals or service duration. D is the symbol for deterministic (known) arrivals and constant service duration. G is a general (any) distribution. GI is a general (any) distribution with independent random values. Examples (both with FIFO or unspecified queue and unlimited population): D/M/1 = Deterministic (known) input times, one exponential channel. M/G/3/20 = Poisson input (see later), three channels with any distribution, maximum number of customers in the system 20 (maximum queue length 17). 4 3 Birth and Death Processes Stochastic process is a collection of random variables {X(t), t T} defined on a probability space and indexed by a parameter t (usually assumed to be time).