Lecture 5
Lecture 5
Specification of a Queue
Source
• Finite
• Infinite
Arrival Process
Service Time Distribution
Maximum Queueing System Capacity
Number of Servers
Queue Discipline
Queueing Theory(cont.)
Specification of a Queue(cont.)
Traffic Intensity (/)
Note: E[s] / E[] = E[s] = /
Server Utilization
Probability that N customers are in the system
at time t.
Queueing Theory(cont.)
Relationships:
L = W (L: avg # in the system)
Lq = Wq (Lq : avg # in queue)
W = Wq + 1/(W: avg waiting time in sys.)
(Wq: avg waiting time in
queue)
To Simplify:
Let C = (n-1 n-2 .... 0) / (n n-1 ......... 1)
Then Pn = Cn P0 , N = 1, 2, ....
M/M/1
Recall:
= / < 1 (for steady-state)
Cn = ( / )n = n , for n = 1, 2, ...
Pn = Cn · P0
The requirement
that n 0
Pn 1
[1 C
n 1
n ]P0 1
P0 1 /(1 C n )
n 1
1/(1 n )
n 1
1/( 0 n )
n 1
M/M/1(cont.)
P0 1 ( n )
n 0
1
n
n 0
1 1
1
1
L 1(1 P0 )
/(1 ) 1 (1 )
2 /(1 ), or
2 / ( )
M/M/1 Example I
Traffic to a message switching center for one of the
outgoing communication lines arrive in a random
pattern at an average rate of 240 messages per
minute. The line has a transmission rate of 800
characters per second. The message length
distribution (including control characters) is
approximately exponential with an average length
of 176 characters. Calculate the following
principal statistical measures of system
performance, assuming that a very large number
of message buffers are provided:
M/M/1 Example I (cont.)
(s-1) s s
M/M/s (cont.)
State Rate In = Rate Out
0 P1 = P0
1 2P2 + P0 = ( + ) P1
2 3P3 + P1 = ( + 2) P2
.... ...................
s-1 sPs + Ps-2 = { + (s-1)} Ps-1
s sPs+1 + Ps-1 = ( + s) Ps
s+1 sPs+2 + Ps = ( + s) Ps+1
.... ...................
M/M/s (cont.)
Now, solve for P1 , P2, P3... in terms of P0
P1 = ( / ) P0
P2 = ( / 2) P1 = (1/2!) ( / )2 P0
P3 = ( / 3) P2 = (1/3!) ( / )3 P0
.........
Ps = (1/s!) ( / )s P0
s
P0
Ps+1 = (1/s) ( / ) Ps = s! s
M/M/s (cont.)
s 2
( / )
Ps 2 (1 / s) ( / )Ps 1 P0
s! s
s j
( / )
Ps j (1 / s) ( / )Ps j 1 P0
s! s
M/M/s (cont.)
n
s!s n s
M/M/s (cont.)
So, if < s
P0 1
s 1 n s n s
s
n 0 n! s! n s
1
s 1 n s 1
n 0 n! s! 1 ( s)
( ) n
Pn P0 , if 0 n s
n!
( ) n
n s P0 , if s n
s!s
M/M/s (cont.)
Now solve for Lq: Note, = / s
L q (n - s)Pn
n s
jPs j ; Note, n = s + j
j0
( / ) s j
j P0
j0 s!
( / ) s d j
P0
s! j0 d
M/M/s (cont.)
s
( / ) d j
L q P0
s! d j0
( / ) s d 1
P0
s! d (1 )
( / ) s
P0 2
s! (1 )
M/M/s (cont.)
( / ) s
L q P0 2
, = / s
s! (1 ) (L : avg # in queue)
q
= Lq + /
Steady-State Parameters of
M/M/s Queue
= / s
1
s 1 / 1 s
n s
P0
n 0 n! s! s
1
s 1 s
n
s 1 1
s
n 0 n! s! 1
0 1 2 3 .......
s
M/M/s Case Example I (cont.)
P0 1
0.80 0.81 0.82 1
0! 1! 2! 1 0.4
= 0.429 (43% of time, system is empty)
as compared to s = 1: P0 = 0.20
( / ) s
Lq P0
s! (1 ) 2
2 2
0.429 {0.8 0.4} /{2!(1 0.4) }
0.152
M/M/s Case Example I (cont.)
Wq = Lq / = 0.152 / (1/10) = 1.52 (min)
W = Wq + 1 / = 1.52 + 1 / (1/8) = 9.52 (min)
What proportion of time is both repairman busy?
(long run)
P(N 2) = 1 - P0 - P1
= 1 - 0.429 - 0.343
= 0.228 (Good or
Bad?)
M/M/s Example II
Many early examples of queueing theory applied to
practical problems concerning tool cribs.
Attendants manage the tool cribs while mechanics,
assumed to be from an infinite calling population,
arrive for service. Assume Poisson arrivals at rate
2 mechanics per minute and exponentially
distributed service times with mean 40 seconds.
M/M/s Example II (cont.)
= 2 per minute, and = 60/40 = 3/2 per minute.
Since, the offered load is greater than 1, that is,
since, / = 2 / (3/2) = 4/3 > 1, more than one
server is needed if the system is to have a
statistical equilibrium. The requirement for steady
state is that s > / = 4/3. Thus, at least s = 2
attendants are needed. The quantity 4/3 is the
expected number of busy server, and for s 2,
= 4 / (3s) is the long-run proportion of
time each server is busy. (What would happen if
there were only s = 1 server?)
M/M/s Example II (cont.)
Let there be s = 2 attendants. First, P0 is calculated as
1
1 4 / 3 4 1 2(3 / 2)
n 2
P0
n 0 n! 3 2! 2(3 / 2) 2
= {1 + 4/3 + (16/9)(1/2)(3)} -1
= {15 / 3}-1 = 1/5 = 0.2
The probability that all servers are busy is given by
P(L() 2) = {(4/3)2 (1/5)} / {2!(1- 2/)}
= (8/3) (1/5) = 0.533
M/M/s Example II (cont.)
Thus, the time-average length of the waiting line of
mechanics is Lq= {(2/3)(8/15)} / (1 - 2/3) =
1.07 mechanics
and the time-average number in system is given by L
= Lq+ / = 16/15 + 4/3 = 12/5 = 2.4 mechanics
Using Little’s relationships, the average time a
mechanic spends at the tool crib is W
= L / = 2.4 / 2 = 1.2 minutes
while the avg time spent waiting for an attendant is Wq
= W - 1/= 1.2 - 2/3 = 0.533 minute
M/M/1/N (single server)
Undefined
Rate Diagram
0
0
Undefined
M/M/1/N (cont.)
1. Form Balance Equations:
2. Solve
N
for P0:
n 0
Pn 1
or
P0 + (/)1 P0 + (/)N P0 = 1
P0 {1+ (/)
N
1
+ (/)N } = 1
P0 = 1 / n{0
( / ) n
}
1
1 ( / ) N 1
1 ( / )
= (1 - ) / (1 - N+1)
M/M/1/N (cont.)
1 n
So, Pn ,
N 1
for n = 0, 1, 2, ..., N
1
Hence,
N
L nPn
n 0
1 N
d n
N 1
1 n 0 d
1 d N n
N 1
1 d 0n
M/M/1/N (cont.)
1 d 1 N 1
L N 1
1 d 1
N N 1
( N 1) N 1
(1 N 1 )(1 )
( N 1) N 1
N 1
(1 ) (1 )
M/M/1/N (cont.)
As usual (when s = 1)
Lq = L - (1- P0)
W = L / e where e = (1 - PN)
Wq = Lq / e
M/M/1/N Example
The unisex barbershop can hold only three
customers, one in service and two waiting.
Additional customers are turned away when the
system is full. Determine the measures of
effectiveness for this system. The traffic intensity
is / = 2 / 3.
The probability that there are three customers in the
system is computed by
Pn = P3 = {(1-2/3) (2/3)3} / { 1 - (2/3)4} =
8 / 65 = 0.123
M/M/1/N Example (cont.)
The expected # of customers in the shop is given by
2 / 3{1 4( 2 / 3) 3 3( 2 / 3) 4 } 66
L 4
{1 ( 2 / 3) }(1 2 / 3) 65
1.015(customers)
Now, the effective arrival rate, e , is given by
e = (1 - Pn) = 2(1 - 8/65) = 2 57 / 65 =114/65
= 1.754 (customers/hour)
Then W can be calculated as
W = L / e = 1.015 / 1.754 = 0.579 (hour)
M/M/1/N Example (cont.)
In order to calculate Lq, first determine P0 as
P0 = (1 - ) / (1 - N+1) = (1 - 2/3) / {1 - (2/3)4}
= {1/3} / {65/81} = 27 / 65
= 0.415
Then the average length of the queue is given by
Lq = L - (1- P0) = 1.015 - (1 - 0.415)
= 0.43 (customer)
M/M/1/N Example (cont.)
Note that 1- P0 = 0.585 is the average number of
customers being served, or equivalently, the
probability that the single server is busy. Thus the
server utilization, or proportion of time the server
is busy in the long run, is given by
= 1- P0 = e / = 0.585
Finally, the waiting time in the queue is determined
by Little’s equation as
Wq = Lq / e = 0.43 / 1.754 = 0.245 (hour)
M/M/1/N Example (cont.)
The reader should compare these results to those of
the unisex barbershop before the capacity
constraint was placed on the system. Specifically,
in systems with limited capacity, the traffic
intensity / can assume any positive value and
no longer equals the server utilization = e / .
Note that server utilization decreases from 67% to
58.5% when the system imposes a capacity
constraint.
M/M/1/N Example (cont.)
= 0(27/65) + 1(18/65) + 2(12/65) + 3(8/65)
= 66 / 65
= 1.015 (customer)
s s s
Undefined
Steady-State Parameters of
M/M/s/N
P0 1
s
( / ) n ( / )s
N
1
n 1 n!
s! n s1
n s
( / s )
( / ) n
Pn P0 , for n = 1, 2, ... s
n!
n
( / )
n s
P0 , for n = s, s+1, ... N
s!s
0, for n > N
Steady-State Parameters of
M/M/s/N (cont.)
s 1 s 1
L nPn L q s(1 P ) n
n 0 n 0
P0 ( / ) s
Lq
s!(1 ) 2
1 N s
( N s ) N s
(1 )
Note: W and Wq are obtained from these
quantities just as shown for the single server
case.
Steady-State Parameters of
M/G/1 Queue
=/
L = + {( + )} / {2 (1 - )}
= + {(1 + )} / {2 (1 - )}
W = + {( + )} / {2 (1 - )}
Wq = {( + )} / {2 (1 - )}
Lq = {( + )} / {2 (1 - )}
= {(1 + )} / {2 (1 - )}
P0 =1-
M/G/1 Example
There are two workers competing for a job. Able
claims an average service time which is faster than
Baker’s, but Baker claims to be more consistent, if
not as fast. The arrivals occur according to a
Poisson process at a rate of = 2 per hour. (1/30
per minute). Able’s statistics are an average
service time of 24 minutes with a standard
deviation of 20 minutes. Baker’s service statistics
are an average service time of 25 minutes, but a
standard deviation of only 2 minutes. If the
average length of the queue is the criterion for
hiring, which worker should be hired?
M/G/1 Example (cont.)
For Able,
= 1/30 (per min), = 24 (min),
= /
24/3020 = 400(min)
Lq = {( + )} /
{2 (1 - )} = {(1/30) (24 +
400)} / {2 (1-4/5)} = 2.711 (customers)
For Baker,
= 1/30 (per min), = 25 (min),
= / 25/302 =
4(min) Lq =
{(1/30) (25 + 4)} / {2 (1-5/6)} =
2.097 (customers)
M/G/1 Example (cont.)
Although working faster on the average, Able’s
greater service variability results in an average
queue length about 30% greater than Baker’s. On
the other hand, the proportion of arrivals who
would find Able idle and thus experience no delay
is P0 = 1 - = 1 / 5 = 20%, while the proportion
who would find Baker idle and thus experience no
delay is P0 = 1 - = 1 / 6 = 16.7%. On the basis of
average queue length, Lq , Baker wins.
Steady-State Parameters of
M/Ek/1 Queue
1 k 2 1 k 2
L
2k ( ) 2k 1
1 k
1 1 k 1
W 1
2k ( ) 2k 1
1 k 1 k 1
Wq
2k ( ) 2k 1
1 k 2 1 k 2
Lq
2k ( ) 2k 1
M/Ek/1 Example
Patient arrive for a physical examination according
to a Poisson process at the rate of one per hour.
The physical examination requires three stages,
each one independently and exponentially
distributed with a service time of 15 minutes. A
patient must go through all three stages before the
next patient is admitted to the treatment facility.
Determine the average number of delayed patients
,Lq , for this system.
M/Ek/1 Example (cont.)
If patients follow this treatment pattern, the service-
time distribution will be Erlang of order k=3. The
necessary treatment parameters are = 1/60 per
minute and = 1/45 per minute; thus
1 k 2 1 3 (1 / 60) 2
Lq
2k ( ) 2 3 (1 / 45)(1 / 45 1 / 60)
2 135 3
( patients)
3 60 2
Steady-State Parameters of
M/D/1 Queue
1 2 1 2
L
2 ( ) 2 1
1
1 1 1
W 1
2 ( ) 2 1
1 1 1
Wq
2 ( ) 2 1
1 2 1 2
Lq
2 ( ) 2 1
M/D/1 Example
Arrivals to an airport are all directed to the same
runway. At a certain time of the day, these arrivals
are Poisson distributed at a rate of 30 per hour.
The time to land an aircraft is a constant 90
seconds. Determine Lq, Wq, L and W for this
airport. In this case = 0.5 per minute, and 1/ =
1.5 minutes, or = 2/3 per minute.
M/D/1 Example (cont.)
The runway utilization is
= (1/2) / (2/3) = 3/4
The steady-state parameters are given by
Lq = {(3/4) } / {2 (1 - 3/4)}
= 9 / 8 = 1.125 aircraft
Wq = Lq / = (9/8) / (1/2) = 2.25 minutes
W = Wq + 1 / = 2.25 + 1.5 = 3.75 minutes
L = Lq + / = 1.125 + 0.75 = 1.875 aircraft
Steady-State Parameters of
M/G/ Queue
P0 = e-/
Pn = {e-/(/)n} / n! , n = 0, 1,...
W =1/
Wq =0
L = /
Lq =0
M/G/ Example
Prior to introducing their new on-line computer
information service, The Connection must plan
their system capacity in terms of the number of
users that can be logged on simultaneously. If the
service is successful, customers are expected to
log on at a rate of = 500 per hour, according to a
Poisson process, and stay connected for an
average of 1/= 20 minutes (or 1/3 hour). In the
real system there will be an upper limit on
simultaneous users, but for planning purpose The
M/G/ Example (cont.)
Connection can pretend that the number of
simultaneous users is infinite. An M/G/ model of
the system implies that the expected number of
simultaneous users is L = / = 500(3) = 1500, so
a capacity greater than 1500 is certainly required.
To ensure that they have adequate capacity 95% of
the time, The Connection could allow the number
of simultaneous users to be the smallest value s
such that
M/G/ Example (cont.)
s
P(L() s) Pn
n 0
s
{e 1500 (1500) n } / n!0.95
n 0
P0 n 2
n 0 n 20 n 2 (10 n )!2!2 20
= 0.065
Using P0 we can obtain the other Pn, from which
we can compute the average number of machines
waiting for service
10
L q (n 2)Pn
n 2 1
1.46(machines)
M/M/s/K/K Example (cont.)
The effective arrival rate
K
e (K n )Pn
n 0
10
(10 n )(1 / 20)Pn
n 0
0.342(machines / min)
and the average waiting time in the queue
WqLq/ e (minutes)
Similarly, we can compute the expected number of
machines being serviced or waiting to be served
K 10
L nPn nPn 3.17(machines)
n 0 n 0
M/M/s/K/K Example (cont.)
The average number of machines being serviced is
given by
L - Lq = 3.17 - 1.46 = 1.71 (machines)
since the machines must be running, waiting to be
served, or in service, the average number of
running machines is given by
K - L = 10 - 3.17 = 6.83 (machines)
A frequently asked question is: What will happen if
the number of servers is increased or decreased?
M/M/s/K/K Example (cont.)
If the number of workers in this example increases to
three(s=3), then the time-average number of running
machines increases to K - L = 7.74
(machines) an increase of 0.91
machine, on the average.
Conversely, what happens if the number of servers
decreases to one? Then the time-average number of
running machines decreases to K-L
= 3.98 (machines)
M/M/s/K/K Example (cont.)
The decrease from two to one server has resulted in a
drop of nearly three machines running, on the
average.
This example illustrates several general relationships
that have been found to hold for almost all queues.
If the number of servers is decreased, delays,
server utilization, and the probability of an arrival
having to wait to begin service all increase.