Queuing Theory. Queuing Theory deals with systems of the following type: Typically we are...

30
Queuing Theory

description

Queuing Theory Notation A standard notation is used in queuing theory to denote the type of system we are dealing with. Typical examples are: – M/M/1Poisson Input/Poisson Server/1 Server – M/G/1Poisson Input/General Server/1 Server – D/G/nDeterministic Input/General Server/n Servers – E/G/  Erlangian Input/General Server/Inf. Servers The first letter indicates the input process, the second letter is the server process and the number is the number of servers. (M = Memoryless = Poisson)

Transcript of Queuing Theory. Queuing Theory deals with systems of the following type: Typically we are...

Page 1: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Queuing Theory

Page 2: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Queuing Theory deals with systems of the following type:

Typically we are interested in how much queuing occurs or in the delays at the servers.

Queuing Theory

InputProcess

Server Process(es)

Output

Page 3: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Queuing Theory Notation• A standard notation is used in queuing theory to

denote the type of system we are dealing with.• Typical examples are:– M/M/1 Poisson Input/Poisson Server/1 Server– M/G/1 Poisson Input/General Server/1 Server– D/G/n Deterministic Input/General Server/n Servers– E/G/ Erlangian Input/General Server/Inf. Servers

• The first letter indicates the input process, the second letter is the server process and the number is the number of servers.

• (M = Memoryless = Poisson)

Page 4: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

4

Definition of a queueing system

Customer arrivals

Departure of impatient customers

Departure of served customers

• A queueing system can be described as follows:"customers arrive for a given service, wait if the service cannot start immediately and leave after being served"

• The term "customer" can be men, products, machines, ...

Page 5: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

5

History of queueing theory

• The theory of queueing systems was developed to provide models for forecasting behaviors of systems subject to random demand.

• The first problems addressed concerned congestion of telephone traffic (Erlang, "the theory of probabilities and telephone conversations ", 1909)

• Erlang observed that a telephone system can be modeled by Poisson customer arrivals and exponentially distributed service times

• Molina, Pollaczek, Kolmogorov, Khintchine, Palm, Crommelin followed the track

Page 6: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

6

Interests of queueing systems

Queuing theory found numerous applications in:

– Trafic control (communication networks, air traffic, …)

– Planing (manufacturing systems, computer programmes, …)

– Facility dimensioning (factories, ...)

Page 7: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

7

Classification of queueing systems

Page 8: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

8

Characteristics of simple queueing systems

Queueing systems can be characterized with several criteria:

• Customer arrival processes• Service time• Service discipline• Service capacity• Number of service stages

Page 9: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

9

Notation of Kendall

The following is a standard notation system of queueing systems

T/X/C/K/P/Z with

– T: probability distribution of inter-arrival times– X: probability distribution of service times– C: Number of servers– K: Queue capacity– P: Size of the population– Z: service discipline

Page 10: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

10

Customer arrival processT/X/C/K/P/Z

• T can take the following values:– M : markovian (i.e. exponential)– G : general distribution– D : deterministic– Ek : Erlang distribution– …

• If the arrivals are grouped in lots, we use the notation T[X] where X is the random variable indicating the number of customers at each arrival epoch– P{X=k} = P{k customers arrive at the same time}

• Some arriving customers can leave if the queue is too long

Page 11: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

11

Service timesT/X/C/K/P/Z

• X can take the following values:– M : markovian (i.e. exponential)– G : general distribution– D : deterministic– Ek : Erlang distribution– …

Erlang distribution Ek with parameter m

k exponential servers with parameter m

Page 12: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

12

Number of serversT/X/C/K/P/Z

In simple Queuing Systems, servers are identical

Page 13: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

13

Queue capacityT/X/C/K/P/Z

Loss of customers if the queue is full

Capacity K

Page 14: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

14

Size of the populationT/X/C/K/P/Z

The size of the population can be either finite or infinite

For a finite population, the customer arrival rate is a function of the number of customers in the system: l(n).

Page 15: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

15

Service disciplineT/X/C/K/P/Z

Z can take the following values:

• FCFS or FIFO : First Come First Served

• LCFS or LIFO : Last Come First Served

• RANDOM : service in random order

• HL (Hold On Line) : when an important customer arrives, it takes the head of the queue

• PR ( Preemption) : when an important customer arrives, it is served immediately and the customer under service returns to the queue

• PS (Processor Sharing) : All customers are served simultaneously with service rate inversely proportional to the number of customers

• GD (General Discipline)

Page 16: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory16

• = interarrival time• l = mean arrival rate

= 1/E[]• s = service time per job• m = mean service rate per

server = 1/E[s] (total service rate

for m servers is mm)

Time

Previous arrival Arrival Begin

ServiceEnd

Service

w s

• nq = number of jobs waiting to receive service.• ns = number of jobs receiving service• n = number of jobs in system

n = nq + ns• r = response time = w + s• w = waiting time

r

Note that all of these variables are random variablesexcept for l and m .

Page 17: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory17

Rules for All Queues

• Stability Condition– If the number of jobs becomes infinite, the system is

unstable. For stability, the mean arrival rate less than the mean service rate.

l < mm

– Does not apply to finite buffer system or the finite population systems They are always stable. • Finite population: queue length is always finite. • Finite buffer system: arrivals are lost when the

number of jobs in the system exceed the system capacity.

Page 18: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory18

Rules for All Queues

• Number in System vs. Number in Queue–n = nq + ns

– E[n] = E[nq]+E[ns]–Also, if the service rate of each server is

independent of the number in queue Cov(nq,ns) = 0 Var[n] = Var[nq]+Var[ns]

Page 19: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory19

Rules for All Queues

• Number vs. Time (Little’s law)– If jobs are not lost due to buffer overflow, the mean

jobs is related to its mean response time as follows: mean number of jobs in system

= arrival rate x mean response time– Similarly

mean jobs in queue = arrival rate x mean waiting time– For finite buffers can use effective arrival rate, that is,

the rate of jobs actually admitted to the system.

Page 20: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory20

Rules for All Queues

• Time in System vs. Time in Queue– Time spent in system, response time, is the

sum of waiting time and service timer = w + s

– In particular:E[r] = E[w] + E[s]

– If the service rate is independent of jobs in queue Cov(w,s) = 0 Var[r] = Var[w] + Var[s]

Page 21: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory21

Proof of Little’s LawMean jobs in system = arrival rate x mean response time

Arrival time Departure timejob1 0 4job2 3 6job3 5 7

Page 22: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory22

Proof of Little’s Law

J: total time spent inside the system by all three jobs (the hatched area)

30.4 (a): Mean time spent in the system = J/N30.4 (b): Mean number in the system = J/T = J/N * N/T = Mean time spent in the system * Mean arrival rate

Page 23: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory23

Applying Little’s Law

• Example: – A disk server satisfies an I/O request in average

of 100 msec. I/O rate is about 100 requests/sec. What is the mean number of requests at the disk server?

– Mean number at server = arrival rate x response time

( =100 requests/sec )x (0.1 sec) =10 requests

Page 24: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory24

Types of Stochastic Processes

• A stochastic process is a family of random variables indexed by the parameter t, such as time.

e.g.) Number of jobs at CPU of computer system at time t is a random variable n(t)

• Time and state can be discrete or continuous

Page 25: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory25

Types of Stochastic Processes

• Markov Process– If future states depend only on the present and

are independent of the past (memoryless) then called markov process

– A discrete state Markov Process is a Markov chain

– M/M/m queues can be modeled using Markov process• time spent by a job – Markov process• the number of jobs - Markov chain

Page 26: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory26

Types of Stochastic Processes

• Birth-Death Process– The Markov chain in which transitions

restricted to neighboring states.– Can represent states by integers, s.t. process in

state n can only go to state n+1 or n-1– Arrival (birth) causes state to change by +1 and

departure after service (death) causes state to change by –1

– Only if arrive individually, not in bulk

Page 27: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory27

Types of Stochastic Processes

• Poisson Processes– If inter arrival times are IID and

exponentially distributed, then number of arrivals over interval [t,t+x] has a Poisson distribution Poisson Process–Popular in queuing theory because

arrivals are then memory less

Page 28: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory28

Properties of Poisson Process

(a) Merging k Poisson streams with mean rate li gives another Poisson stream with mean rate l = li

(b) If Poisson stream split into k substreams with probability pi, each substream is Poisson with mean rate lpi

Page 29: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory29

Properties of Poisson Process

(c ) If arrivals to single server with exponential service times are Poisson

with mean , d epartures are also Poisson with mean , if (<)

(d )Same relationship holds for m servers as long as total arrival rate less than total service rate

Page 30: Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.

Chapter 30 Introduction to Queueing Theory30

Types of Stochastic Processes

PoissonProcesses

Birth-deathProcesses

MarkovProcesses