Post on 07-Jul-2020
transcript
1
CHAPTER-1
INTRODUCTION
1.1 DESCRIPTION OF THE QUEUEING PROBLEM A queueing system can be described as customers arriving for service, waiting for service if
service is not immediate, and if having waited for service , leaving the system after being
served. The term “customer” is used in a general sense and does not imply necessarily a
human customer. For example, a customer could be a ball bearing waiting to be polished, an
airplane waiting in line to take off, a computer program waiting to be run. It should be clear
that a reasonably accurate representation of such a system would require a detailed
characterization of the underlying processes.
Queueing theory was developed to provide models to predict the behavior of systems that
attempt to provide service for randomly arising demands; not unnaturally, then, the earliest
problems studied where those of telephone traffic congestion. The pioneer investigator was
the Danish mathematician A. K. Erlang [26], who, in 1909, published “The Theory of
Probabilities and Telephone Conversations”. In later works he observed that a telephone
system was generally characterized by either (1) Poisson input, exponential holding (service)
times, and multiple channels (servers), or (2) Poisson input, constant holding times, and a
single channel. Erlang was also responsible for the notion of stationary equilibrium, for the
introduction of so-called balance-of-state equations, and for the first consideration of the
optimization of a queueing system. Work of A. K. Erlang is described by Bbocmeyer [13].
Work on the application of the theory to telephony continued after Erlang. In 1927, E. C.
Molina [66] published his paper “Application of the Theory of Probability to Telephone
Trunking Problems”, which was followed one year later by Thornton Fry’s [29] Probability
and Its Engineering Uses, which expanded much of Erlang’s earlier work. In the early
1930s, Felix Pollaczek [72] did some further pioneering work on Poisson input, arbitrary
2
output, and single- and multiple-channel problems. Additional work was done at that time in
Russia by Kolmogorov [58] and Khintchine [55], in France by Crommelin [22], and in Sweden
by Palm [18]. The work in queueing theory picked up momentum rather slowly in its early
days, but accelerated in 1950s, and there has been a great deal of work in the area since
then. Work on queueing process was also done by Homma [43] and Kendall [52].
There are many valuable applications of the theory, most of which have been well
documented in the literature of probability, operations research, management science, and
industrial engineering. Some examples are traffic flow (vehicles, aircraft, people,
communications), scheduling (patients in hospitals, jobs on machines, programs on a
computer), and facility design (banks, post offices, amusement parks, fast-food restaurants).
Queueing theory originated as a very practical subject, but much of the literature up to the
middle 1980s was of little direct practical value. However, queueing theorists have once again
become concerned about the application of the sophisticated theory that has largely arisen
since the close of World War II. The emphasis in the literature on the exact solution of
queueing problems with clever mathematical tricks is now becoming secondary to model
building and the direct use of these techniques in management decision making. Most real
problems do not correspond exactly to a mathematical model, and increasing attention is
being paid to complex computational analysis, approximate solutions, sensitivity analyses, and
the like. The development of the practice of queueing theory must not be restricted by a
lack of closed-form solutions, and problem solvers must be able to put the developed theory
to good use. There is an extensive literature on queueing theory, including several text
[20,21,67,37,33,79].
1.2 CHARACTERISTICS OF QUEUEING PROCESSES In most cases, six basic characteristics of queueing processes provide an adequate
description of a queueing system: (1) arrival pattern of customers, (2) service pattern of
servers, (3) queue discipline, (4) system capacity, (5) number of service channels, and (6)
number of service stages.
1.2.1 ARRIVAL PATTERN OF CUSTOMERS
In usual queueing situations, the process of arrivals is stochastic, and it is thus necessary
to know the probability distribution describing the times between successive customer
3
arrivals (interarrival times). It is also necessary to know whether customers can arrive
simultaneously (batch or bulk arrivals), and if so, the probability distribution describing the
size of the batch.
It is also necessary to know the reaction of a customer upon entering the system. A
customer may decide to wait no matter how long the queue becomes, or, on the other hand,
if the queue is too long, the customer may decide not to enter the system. If a customer
decides not to enter the queue upon arrival, the customer is said to have balked. A customer
may enter the queue, but after a time lose patience and decides to leave. In this case, the
customer is said to have reneged. In the event that there are two or more parallel waiting
lines, customers may switch from one to another, that is, jockey for position. These three
situations are all examples of queue with impatient customers. One final factor to be
considered regarding the arrival pattern is the manner in which the pattern changes with
time. An arrival pattern that does not change with time (i.e., the probability distribution
describing the input process is time-independent) is called a stationary arrival pattern. One
that is not time-independent is called nonstationary.
1.2.2 SERVICE PATTERNS
Much of the discussion above concerning the arrival pattern is appropriate in discussing
service. Most importantly, a probability distribution is needed to describe the sequence of
customer service times. Service may also be single or batch. One generally thinks of one
customer being served at a time by a given server, but there are many situations where
customers may be served simultaneously by the same server, such as a computer with
parallel processing, sightseers on a guided tour, or people boarding a train.
The service process may depend on the number of customers waiting for service. A server
may work faster if the queue is building up or, on the contrary, may get flustered and
become less efficient. The situation in which service depends on the number of customers
waiting is referred to as state-dependent service. Although this term was not used in
discussing arrival patterns, the problem of customer impatience can be looked upon as ones
of state-dependent arrivals, since the arrival behavior depends on amount of congestion in
the system.
Service, like arrivals, can be stationary or nonstationary with respect to time. For example, learning
may take place, so that service becomes more efficient as experience is gained. The
4
dependence on time is not to be confused with dependence on state. The former does not
depend on the number of customers in the system, but rather on how long it has been in
operation, The latter does not depend on how long the system has been in operation, but
only on the state of the system at a given time, that is, on how many customers are
currently in the system. Of course, a queueing can be both non stationary and state-dependent.
Even if the service rate is high, it is very likely that some customers will be delayed by
waiting in the line. In general, customers arrive and depart at irregular intervals; hence the
queue length will assume no definitive pattern unless arrivals and service are deterministic.
Thus it follows that a probability distribution for queue lengths will be the result of two
separate processes- arrival and services- which are generally, though not universally, assumed
mutually independent.
1.2.3 QUEUE DISCIPLINE
Queue discipline refers to the manner in which customers are selected for service when a
queue has formed. The most common discipline that can be observed in everyday life is
first come, first served (FCFS). However, this is certainly not the only possible queue discipline.
Some others in common usage are last come, first served (LCFS), which is applicable to
many inventory systems when there is no obsolescence of stored units, as it is easier to
reach the nearest items, which are the last in; selection for service in random order
independent of the time of arrival to the queue (RSS); and a variety of priority schemes,
where customers are given priorities upon entering the system, the ones with higher
priorities to be selected for service ahead of those with lower priorities, regardless of their
time of arrival to the system.
There are two general situations in priority disciplines. In the first, which is called preemptive,
the customer with the highest priority is allowed to enter service immediately even if a
customer with lower priority is already in service when the higher- priority customer enters
the system; that is, the lower- priority customer in service is preempted, its service stopped, to
be resumed again after the higher- priority customer is served. There are two possible
additional variations: the preempted customer’s service when resumed can either continue
from the point of preemption or start a new. In the second general priority situation, called
the nonpreemptive case, the highest- priority customer goes to the head of the queue but
5
cannot get into service until the customer presently in service is completed, even though
this customer has a lower priority.
1.2.4 SYSTEM CAPACITY
In some queueing processes there is a physical limitation to the amount of waiting room, so
that when the line reaches a certain length, no further customers are allowed to enter until
space becomes available as the result of a service completion. These are referred to as
finite queueing situations; that is, there is a finite limit to the maximum system size. A queue
with limited waiting room can be viewed as one with forced balking where a customer is
forced to balk if it arrives when the queue size is at its limit. This is a simple case, since
it is known exactly under what circumstances arriving customers must balk.
1.2.5 NUMBER OF SERVICE CHANNELS
It is generally preferable to design multi-server queueing systems to be fed by a single line.
Thus, when we specify the number of service channels, we are typically referring to the
number of parallel service stations which can serve customers simultaneously. The two
multichannel systems differ in that the one has a single queue, while the other allows a queue
for each channel. A hair- styling salon with many chairs is an example of the first type of
multichannel system (assuming no customer is waiting for any particular stylist), while a
supermarket or fast- food restaurant might fit the second description. It is generally assumed
that the service mechanisms of parallel channels operate independently of each other.
1.2.6 STAGES OF SERVICE
A queuing system may have only a single stage of service, as in the hair- styling salon, or
it may have several stages. An example of a multistage queueing system would be a
physical examination procedure, where each patient must proceed through several stages, such
as medical history; ear, nose and, throat examination; blood tests; electrocardiogram; eye
examination; and so on. In some multistage queueing processes recycling or feedback may occur.
Recycling is common in manufacturing processes, where quality- control inspections are
performed after certain stages, and parts that do not meet quality standards are sent back
for reprocessing. Similarly, a telecommunications network may process messages through a
6
randomly selected sequence of nodes, with the possibility that some messages will require
rerouting on occasion through the same stage.
The six characteristics of queueing systems discussed in this part are generally sufficient to
completely describe a process under study. Clearly, a wide variety of queueing systems can be
encountered. Before performing any mathematical analyses, however, it is absolutely necessary
to describe adequately the process being modeled.
It is extremely important to use the correct model or at least the model that best describes
the real situation being studied. A great deal of thought is often required in this model
selection procedure. For example, let us reconsider the supermarket mentioned previously. Suppose
there are c checkout counters. If customers choose a checkout counter on a purely
random basis (without regard to the queue length in front of each counter) and never
switch lines (no jockeying), then we truly have c independent single- channel models. If, on
the other hand, there is a single waiting line and when a checker becomes idle, the
customer at the head of the line (or with the lowest number if numbers are given out)
enter service, we have a c- channel model. Neither, of course, is generally the case in most
supermarkets. What usually happens is that queues form in front of each counter, but new
customers enter the queue which is the shortest (or has shopping carts which are lightly
loaded). Also, there is a great deal of jockeying between lines. Now the question becomes which
choice of models (c independent single channels or a single c- channel) is more appropriate.
If there were complete jockeying, the single c- channel model would be quite appropriate,
since even though in reality there are c lines, there is little difference, when jockeying is
present, between these two cases. This is so because no servers will be idle as long as
customers are waiting for service, which would not be the case with c truly independent
single channels. As jockeying is rather easy to accomplish in supermarkets, the c- channel
model will be more appropriate and realistic than the c- single- channels model, which one
might have been tempted to choose initially prior to giving much thought to the process.
Thus it is important not to jump to hasty conclusions but to select carefully the most
appropriate model.
1.3 NOTATIONS OF QUEUEING MODELS As a shorthand for describing queueing processes, a notation has evolved, due for the most
part to Kendall [11] (1953), which is now rather standard throughout the queueing literature.
7
⎪⎪⎪⎪
⎭
⎪⎪⎪⎪
⎬
⎫
A queueing process is described by a series of symbols and slashes such as A/B/X/Y/Z,
where A indicates in some way the interarrival- time distribution, B the service pattern as
described by the probability distribution for service time, X the number of parallel service
channels, Y the restriction on system capacity, and Z the queue discipline. Some standard
symbols for these characteristics are presented in Table 1.1. For example, the notation
M/D/2/∞/FCFS indicate a queueing process with exponential interarrival times, deterministic
service times, two parallel servers, no restriction on the maximum number allowed in the
system, and first- come, first- served queue discipline.
Table 1.1: Queueing Notation A/B/X/Y/Z
Characteristic Symbol Explanation Interarrival-time distribution (A) Service-time distribution (B) Number of parallel servers (X) Restriction on system capacity (Y) Queue discipline (Z)
M D Ek Hk PH G 1,2,…,∞ 1,2,…,∞ FCFS LCFS RSS PR GD
Exponential Deterministic Erlang type k (k=1,2,..∞) Mixture of k exponentials Phase type General First come, first served Last come, first served Random selection for service Priority General discipline
In many situations only the first three symbols are used. Current practice is to omit the
service- capacity symbol if no restriction is imposed (Y = ∞) and to omit the queue
discipline if it is first come, first served (Z = FCFS). Thus M/D/2 would be a queueing
system with exponential input, deterministic service, two servers, no limit on system capacity,
and first- come, first- served discipline. The symbol G represents a general probability
distribution; that is, no assumption is made as to the precise form of the distribution. Results
in these cases are applicable to any probability distribution. These general-time distributions,
however, are required to represent independent and identically distributed random variables. It may
also appear strange that the symbol M is used for exponential. The use of symbol E, as one
8
might expect, would be too easily confused with Ek , which is used for the type- k Erlang
distribution (a gamma with an integer shape parameter). So M is used instead; it stands for
the Markovian or memoryless property of the exponential.
1.4 PERFORMANCE OF QUEUEING MODELS Up to now the concentration has been on the physical description of the queueing
processes. What, then, might one like to know about the effectiveness of a queueing system?
Generally there are three types of system responses of interest.
These are: (1) some measure of the waiting time that a typical customer might be forced to
endure; (2) an indication of the manner in which customers may accumulate; (3) a measure
of the idle time of the servers. Since most queueing systems have stochastic elements, these
measures are often random variables and their probability distributions, or at the very least
their expected values, are desired.
There are two types of customer waiting times, the time a customer spends in the queue
and the total time a customer spends in the system (queue plus service). Depending on the
system being studied, one may be of more interest than the other. For example, if we are
studying an amusement park, it is the time waiting in the queue that makes the customer
unhappy. On the other hand, if we are dealing with machines that require repair, then it is
the total down time (queue wait plus repair time) that we wish to keep as small as
possible. Correspondingly, there are two customer accumulation measures as well: the number
of customers in the queue and the total number of customers in the system. The former
would be of interest if we desire to determine a design for waiting space (say the number
of seats to have for customers waiting in a hair- styling salon), while the latter may be of
interest for knowing how many of our machines may be unavailable for use. Idle- service
measures can include the percentage of time any particular server may be idle, or the time the
entire system is devoid of customers.
The task of the queueing analyst is generally one of the two things. He or she is either to
determine the values of appropriate measures of effectiveness for a given process, or to
design an “optimal” (according to some criterion) system. To do the former, one must relate
waiting delays, queue lengths, and such to the given properties of the input stream and the
service procedures. On the other hand, for the design of a system the analyst might want to
balance customer waiting time against the idle time of servers according to some inherent
9
cost structure. If the costs of waiting and idle service can be obtained directly, they can be
used to determine the optimum number of channels to maintain and the service rates at
which to operate these channels. Also, to design the waiting facility it is necessary to have
information regarding the possible size of the queue to plan for waiting room. There may
also be a space cost which should be considered along with customer- waiting and idle-
server costs to obtain the optimal system design. In any case, the analyst will strive to solve
this problem by analytical means; however, if these fail, he or she must resort to simulation.
Ultimately, the issue generally comes down to a trade- off of better customer service versus
the expense of providing more service capability, that is, determining the increase in
investment of service for a corresponding decrease in customer delay.
1.5 SOME GENERAL RESULTS
We present some general results and relationships for G/G/1 and G/G/c queues in this
section, prior to specific model development.
Denoting the average rate of customers entering the queueing system as λ and the average
rate of serving customers as μ, a measure of traffic congestion for c-server systems is
ρ = λ/cμ. When ρ > 1 (λ > cμ), the average number of arrivals into the system exceeds the
maximum average service rate of the system, and we would expect, as time goes on, the
queue to get bigger and bigger, unless, at some point, customers were not allowed to join. If
we are interested in steady- state conditions (the state of the system after it has been in
operation a long time), when ρ > 1, the queue size never settles down (assuming customers
are not prevented from entering the system) and there is no steady state. It turns out that
for steady- state results to exist, ρ must be strictly less than 1 (again, assuming no denial of
customer entry). When ρ = 1, unless arrivals and service are deterministic and perfectly
scheduled, no steady state exists, since randomness will prevent the queue from every
emptying out and allowing the servers to catch up, thus causing the queue to grow without
bound. Therefore, if one knows the average arrival rate and average service rate, the
minimum number of parallel servers required to guarantee a steady- state solution can be
immediately calculated by finding the smallest c such that λ/cμ < 1.
What we most often desire in solving queueing models is to find the probability
distribution for the total number of customers in the system at time t, N(t), which is made
up of those waiting in queue, Nq(t), plus those in service, Ns(t). Let pn(t) = Pr {N(t )= n}, and
10
[ ] ,0∑∞
=
==n
nnpNEL
[ ] ( ) .1
ncn
qq pcnNEL ∑∞
+=
−==
pn = Pr{ N = n } in the steady state. Considering c-server queues in steady state, two
expected-value measures of major interest are the mean number in the system,
and the expected number in the queue,
1.5.1 LITTLE’S FORMULAS
One of the most powerful relationships in queueing theory was developed by John D. C.
Little [16] in the early 1960s. Little related the steady-state mean system sizes to the steady-
state average customer waiting times as follows. Letting Tq represent the time a customer
(transaction) spends waiting in the queue prior to entering service and T represent the total
time a customer spends in the system (T = Tq + S, where S is the service time, and T, Tq ,
and S are random variables), two often used measures of system performance with respect
to customers are Wq = E[ Tq ] and W = E[ T ] , the mean waiting time in queue and the mean
waiting time in the system, respectively. Little’s formulas are
L = λW ( 1.1a)
and
Lq = λWq. (1.1b )
Thus it is necessary to find only one of the four expected value measures, in view of
Little’s formulas and the fact that E[T] = E[ Tq ] + E[S], or, equivalently, W = Wq + 1/μ, where
μ, as before, is the mean service rate.
An interesting result that can be derived from Little’s formulas [ Equations (1.1a) and (1.1b)] and
the relation between W and Wq is
L – Lq = λ (W - Wq ) = λ (1/μ) = λ /μ . (1.2)
But L – Lq = E[ N ] – E[ Nq ] = E[N – Nq ] = E[Ns ] , so that the expected number of customers
in service in the steady state is λ /μ, which we will denote by r. Note for a single-server
system r = ρ and it also follows from simple algebra that
11
( ) .11 0111
pppnnpLLn
nn
nn
nq −==−−=− ∑∑∑∞
=
∞
=
∞
=
From this, we can easily derive the probability that any given server is busy in a multi
server system in the steady state. We donate this probability by pb . Since we have just shown
that the expected number present in service at any instant in the steady state is r, it follows
from the symmetry of the c servers that the expected number present at one server is r /c.
Then, by a simple expected-value argument, we can show that pb = ρ , since
r /c = ρ = 0. (1- pb ) + 1. pb .
For a single- server queue (G /G /1), the probability of the system being idle (N = 0) is the
same as the probability of a server being idle. Thus, p0 = 1- pb in this case, and p0 = 1 - ρ
= 1 - r = 1 - λ /μ. The quantity r = λ /μ , the expected number of customers in the service, has
another interesting connotation. It is sometimes also referred to as the offered load, since, on
average, each customer requires 1/μ time units of service and the average number of
customers arriving per unit time is λ, so that the product λ (1/μ) is the amount of work
arriving to the system per unit time. Dividing this by the number of servers c which yield
ρ) gives the average amount of work coming to each server per unit time. A simple proof of
L = λ W is given by Elison S. [25].
Table 1.2: Summary of General Results for G /G /c Queues
ρ = λ/cμ
L = λW
Lq = λWq
W =Wq + 1/μ
pb = λ/cμ = ρ
r = λ/μ
L = Lq + r
p0 =1 - ρ
L = Lq + (1- p0 )
Traffic intensity; offered work load rate to a server
Little’s formula
Little’s formula
Expected- value argument
Busy probability for an arbitrary server
Expected number of customers in service; offered work load rate
Combined result-Equation 1.2
G/G/1 empty-system probability
Combined result for G/G/1
12
0)(lim0
=ΔΔ
→Δ tto
t
( ) ( ) ),()]()[()](1[ 1 totottptottpttp nnn Δ+Δ+Δ+Δ−Δ−=Δ+ − λλ
( ) )].(1)[(00 tottpttp Δ−Δ−=Δ+ λ
( ) )()()(00 tottptpttp o Δ+Δ−=−Δ+ λ
1.6 POISSON PROCESS AND THE EXPONENTIAL DISTRIBUTION The most common stochastic queueing models assume that interarrival times and service times obey
the exponential distribution or, equivalently arrival rate and service rate follow a Poisson
distribution. Derive the Poisson distribution and show that assuming number of occurrences in some
interval to be a Poisson random variable is equivalent to assuming time between successive
occurrences to be an exponentially distributed random variable.
Consider an arrival counting process {N(t), t ≥ 0}, where N(t) denotes the total number of arrivals
up to time t, with N(0) = 0, and which satisfies following three assumptions:
1. Pr{arrivals occurs between t and t + ∆t}= λ Δt + o(Δt) where λ is a constant independent of
N(t), Δt is an increment element, and o(Δt) denotes a quantity that becomes negligible
when compared to Δt as Δt → 0, that is,
2. Pr{more than one arrival between t and t + ∆t} = o(Δt).
3. The numbers of arrivals in non overlapping intervals are statistically independent; that is, the
process has independent increments.
For n ≥ 1 we have
pn( t + ∆t) = Pr{n arrivals in t and none in ∆t}
+ Pr{n - 1 arrivals in t and one in ∆t}
+ Pr{n - 2 arrivals in t and two in ∆t}+ …….
+ Pr{no arrivals in t and n in ∆t}. (1.3)
Using assumptions 1, 2 and 3, Equation (1.3) becomes
(1.4)
where the last term, o(Δt), represents the terms Pr{n - j arrivals in t and j in ∆t; 2 ≤ j ≤ n }.
For the case n = 0, we have
(1.5)
Rewriting (1.4) and (1.5) and combining all o(Δt) terms, we have
(1.6)
13
( ) )()()()( 1 tottpttptpttp nnnn Δ+Δ+Δ−=−Δ+ −λλ
,)()()(lim)()(
lim
,)()(lim)()(
lim
100
00
00
0
⎥⎦⎤
⎢⎣⎡
ΔΔ
++−=⎥⎦⎤
⎢⎣⎡
Δ−Δ+
⎥⎦⎤
⎢⎣⎡
ΔΔ
+−=⎥⎦⎤
⎢⎣⎡
Δ−Δ+
−→Δ→Δ
→Δ→Δ
ttotptp
ttpttp
ttotp
ttpttp
nnt
nn
t
tt
λλ
λ
( ) ( )tpdt
tdp0
0 λ−=
( ) ( ) ( ) ( )11 ≥+−= − n tptpdt
tdpnn
n λλ
,)(0tCetp λ−=
( ) ( ) ( ),011 tptp
dttdp
λλ +−=
( ) ( ) ( ) .011 tetptp
dttdp λλλλ −==+
.)(1tt teCetp λλ λ −− +=
( ) .1ttetp λλ −=
( ) .!)( t
n
n enttp λλ −=
0→Δt
and
(n ≥ 1). (1.7)
We divide (1.6) and (1.7) by Δt, take the limit as , and obtain the differential-difference
equations
( n ≥ 1),
which reduces to
(1.8)
and
. (1.9)
Equation (1.8) has the general solution where C = 1, since p0(0) = 1.
Considering n = 1 in (1.9), and we get
or
The solution to this equation is
Use of the boundary condition pn (0) = 0 for all n > 0 yields C = 0 and gives
Continuing sequentially to n = 2, 3…in (1.9) and proceeding similarly the general formula is
(1.10)
This is the formula for a Poisson distribution with mean λt. Thus if we consider the random variable
defined as the number of arrivals to a queueing system by time t, this random variable has the
14
{ } { }{ }0
0101 tTPr
)tT(and)tT(PrtT/tTPr
≥≥≤
=≥≤
0
10
t
tt
eee
λ
λλ
−
−− −=
( ) { }.0Pr1 0101 ttTe tt −≤≤=−= −−λ
{ } { }.0Pr/Pr 0101 ttTtTtT −≤≤=≥≤
{ } { } .)(timeinarrivalsnoPrPr 0tetpttT λ−===≥
{ } ,1Pr)( tetTtA λ−−=≤=
.)()( tedt
tdAta λλ −==
Poisson distribution given by (1.10) with a mean of λt arrivals, or a mean arrival rate ( arrivals per
unit time) of λ.
We now show that if the arrival process is Poisson, an associated random variable defined as the
time between successive arrivals (interarrival time) follows the exponential distribution. Let T be
the random variable “time between successive arrivals”; then
Therefore, cumulative distribution function of T can be written as
with corresponding density function
Thus T has the exponential distribution with mean 1/λ. We would intuitively expect the mean time
between arrivals to be 1/λ if the mean arrival rate is λ. It can also be shown that if the interarrival
times are independent and have the same exponential distribution, then the arrival rate follows the
Poisson distribution. A generalization of Erlang’s loss system to State dependent arrival and service
rate is given by Brumelle [14].
1.7 MARKOVIAN PROPERTY OF THE EXPONENTIAL DISTRIBUTION We will now prove the Markovian or memory less property of the exponential distribution. To
explain this property in words, suppose service times are exponentially distributed. This property
states that a customer currently in service has t units of remaining service is independent of how
long it has already been in service. Thus we wish to prove that
(1.11)
The proof is relatively straightforward and proceeds as follows. From the definition of conditional
probability we have
15
( ) ( ) ( )tgsgtsg +=+
( ) Cyyg =
{ } ( ) .1Pr CtetFtT −==≤
( )0101~)/(~ ttFtTtF −=≥
( )( )
( )( )
( ),ttF~tF~tF~
tF~tandTtF~
010
1
0
01 −==≥
( ) ( ) ( ).~~~0101 ttFtFtF −=
01 ttt −=
( ) ( ) ( ).~ln~ln~ln 00 tFtFttF +=+
( ) ( ) ( ),~~~00 tFtFttF =+
( ) ,~ln CttF = ( ) .~ CtetF =
F~
It is also true that the exponential distribution is the only continuous distribution which exhibits this
memory less property. (The only other distribution to exhibit this property is the geometric, which is
the discrete analog of the exponential). The proof of this assertion rests on the fact that the only
continuous function solution of the equation
is the linear form
(1.12)
here C is an arbitrary constant. This rather intuitive result turns out not to be a trivial matter to
prove. However, the proof is well documented in the literature (e.g., see Parzen [70], [71], 1960,
1962), and, for the purpose of this text, this additional detail is not necessary. Then, under the
assumption of this result, we proceed as follows. We show that if the memorylessness of (1.11)
holds, then it follows
Now subtract both sides of (1.11) from 1 and denote the complementary CDF by . Thus
(1.13)
From the laws of conditional probability, we can write ( 1.13) as
or
Letting yields
and when natural logarithms are taken on both sides, it is found that
Thus it follows from (1.12) that
or
16
( ) .1 CtetF −=
( ) ( ) ( )[ ] ,!ntmetp
ntm
n−= ( ) ( ) .n dsstm
t
)0(0
≥= ∫ λ
( ){ } ( ) )21( insoccurrencePr ......n,........., itottti i =Δ+Δ=Δ+ λ
.1
λλ =∑=
n
ii
( ) [ ]{ }tntPn ,0inoccurrencePr=
( ) ( ) ( )( ),1!
00
0≡= ∑
=
− ccite i
n
in
i
t λλ
( )toti Δ+Δλ
( ) ( )tott +Δλ
( ) ( )∑= i i tiNtN
Thus
There are many possible and well-known generalizations of the Poisson-exponential process, most
of which have rather obvious application to queues. The most obvious of the generalizations is a
truncation of the infinite domain, that is, omission of some of the nonnegative integers from the
range of possible values. This is done whenever the removed values are either theoretically
meaningless or practically unobservable. An example of this occurs in the M/M/c/c queue and gives
rise to Erlang’s loss or B formula. The only change to be made here, with caution, is the rescaling of
the respective probabilities because the Poisson term no longer sum to one.
Another generalization arises if we go back to the axiomatic derivation and no longer permit λ to be
a constant independent of time. If instead the functional relationship is denoted by λ(t), then the
probability of one occurrence in a small time increment is rewritten as , and it turns out
that the resulting distribution of the counting process is the so-called non homogeneous Poisson
given by
A third, and very common, generalization occurs when one relaxes the Poisson assumption that
more than one occurrence in Δt has probability o(Δt). Instead, let
with
It should be immediately clear now that this is equivalent to allowing the event of i simultaneous
occurrences in Δt with probability , and each individual stream of occurrences of the
same batch size (i) itself forms a Poisson process. If these substreams are denoted by Ni(t), then the
total process is , with probability function
17
( )( )
,1∑=
=tM
nnYtN
{ } ( )njYc nj allforPr ==
;∑
=ii
j
λλ
( ){ } ( ){ }
( ) ( ).!
PrPrPr
0
0 1
km
km
k
t
m
k
k
nn
ckte
mYktMmtN
λλ∑
∑ ∑
=
−
= =
=
⎥⎦
⎤⎢⎣
⎡
⎭⎬⎫
⎩⎨⎧
=⋅===
( )inc
λλ /i
where is the probability that i occurrences give a grand total of n (i.e., the probability
associated with the i-fold convolution of the batch-size probabilities { }). The process N(t) is
known as the multiple Poisson and clearly also has the stationary and independent-increment
properties.
The foregoing probability function pn(t) has an alternative derivation as a compound distribution,
since it admits of a random sum interpretation as follows. Define N(t) as
where M(t) is a regular Poisson process and {Yn} is a sequence of independent and identically
distributed (IID) discrete random variable with probabilities
that is, occurrences happen according to a Poisson process{M(t)} but are not necessarily singles in
that their size is j with probability cj. Then, by the laws of probability,
In other words, the compound approach looks at the process as one Poisson stream with a randomly
varying batch size, whereas the multiple approach looks at the process as the sum of Poisson
streams, each with a constant batch size.
Poisson-exponential streams are special cases of a larger class of problems called renewal
processes. An ordinary renewal process arises from any sequence of nonnegative IID random
variables.
The Poisson process and its associated characteristics will play a key role in the development of
many queueing models. This is true not only because many mathematically agreeable properties of
the Poisson-exponential, but also many real-life situation in fact do obey the appropriate
18
( ) ( )∫ dxxfxf log
( ) TttX ∈,
( ) TttX ∈,
+∞<<−∞ tt :
( ) TttX ∈,+∞<< tt 0:
requirements. Though it may seem at first glance that the demands of exponential interoccurrence
times are rather stringent, this is not the case.
A strong argument in favor of exponential inputs is the one that often occur in the context of
reliability. It is result of well-known fact that the limit of a binomial distribution is Poisson, which
says that if a mechanism consists of many parts, each can fail with only a small probability, and if
the failures for the different parts are mutually independent and identical, then the total flow of
failures can be considered Poisson. Another view that favors the exponential comes from the theory
of extreme values. Here the exponential appears quite frequently as the limiting distribution of the
(normalized) first-order statistic of random samples drawn from continuous populations.
There is also an additional argument that comes out of information theory. It is that the exponential
distribution is the one that provides the least information, where information content or negative
entropy of distribution f(x) is defined as . It can easily be shown that the
exponential distribution has least information or highest entropy, and is therefore the most random
law that can be used, and thus certainly provides a reasonably conservative approach.
1.8 STOCHASTIC PROCESSES AND MARKOV CHAINS A stochastic process is a mathematical abstraction of an empirical process whose development is
governed by probabilistic laws (the Poisson process is one example). From the point of view of the
mathematical theory of probability, a stochastic process is best defined as a family of random
variables, { }, defined over some index set or parameter space T. The set T is sometimes
also called the time range, and X(t) denotes the state of process at time t. Depending upon the nature
of the time range, the process is classified as a discrete-parameter or continuous-parameter process
as follows:
1. If T is countable sequence, for example, T = { 0, ± 1, ± 2,….. } or T= { 0,1,2…… }, then the
stochastic process { } is said to be a discrete-parameter process defined on the index
set T.
2. If T is an interval or an algebraic combination of intervals, for example, T = { }
or T = { }, then the stochastic process{ } is called a continous-
parameter process defined on the index set T.
19
( ) 0/ =dttdp j ( ) jj ptp =
( ) ( ).1100
1111
0
,10
pp
jppp jjjjjjj
μλ
μλμλ
+−=
≥+++−= ++−−
( )
.01
01
11
1
11 ,1
pp
jppp jj
jj
j
jjj
μλ
μλ
μμλ
=
≥−+
= −+
−
++
,012
01
02
00
2
0
2
11
02
01
2
112
p
pp
ppp
μμλλ
μλ
μλ
μμλ
μλ
μμλ
=
−+
=
−+
=
( )
∏=
−
−
−−
=
≥=
n
i i
io
nn
nnn
p
npp
1
1
011
021
,
1......
μλ
μμμλλλ
.
.
.
,0123
012
013
010
13
01
3
22
13
12
3
223
p
pp
ppp
μμμλλλ
μμλλ
μμλλ
μμλ
μλ
μμλ
=
−+
=
−+
=
{ } ( ){ } ( ) ),n ( tot μ t) in (t, tn n
),(n tot λ t) in (t, tne n
n
n
11decreasePr01increasPr
≥Δ+Δ=Δ+−→≥Δ+Δ=Δ++→
1.9 STEADY-STATE BIRTH-DEATH PROCESSES With the proper conditions on λi and µi and taking , and
in differential-difference equation for the birth death process, we get,
(1.14)
Rewriting, we get,
(1.15)
It follows that
The pattern which appears to be emerging is that
(1.16)
20
∏
∏ ∏∏
∏ ∏
+
=
−
= =
−
+
−
= +
−
+
=
−
=
−
+
−−
++
=
−+=
−+
=
1
1
10
1 1
1
1
01
1 1
01
1
0
1
1
1
10
1
110
11
,k
i i
i
k
i
k
i i
i
k
k
i
ik
i k
k
i
i
k
k
k
i
k
i i
i
k
k
i
i
k
kkk
p
ppp
ppp
μλ
μλ
μμ
μλ
μμ
μλ
μλ
μλ
μλ
μλ
μμλ
.11
1 1
10
−∞
= =
−⎟⎟⎠
⎞⎜⎜⎝
⎛+= ∑∏
n
n
i i
ipμλ
∑∏∞
= =
−+1 1
1 .1n
n
i i
i
μλ
λλ =n μμ =n
( )( ) ,
,t
t
etbeta
μ
λ
μ
λ−
−
=
=
and we guess that this is the correct formula. To verify (1.16) is, in fact, proper, mathematical
induction will be used on equation (1.15).
First, the formula is clearly correct for n = 0. We have also shown it to be valid for n = 1, 2, and 3.
If it is assumed to be true for n = k ( ≥ 0), then it is seen that
hence the proof by induction is complete.
Since probabilities must sum to 1, it follows that
(1.17)
From (1.17), we thus see that a necessary and sufficient condition for the existence of a steady-state
solution is the convergence of the infinite series
Equations (1.16) and (1.17) are extremely useful in generating a variety of queueing models. For
example, we can see that by letting and for all n, we obtain the M/M/1 queue.
The transient solutions to birth-death processes are, for the most part, extremely difficult to obtain.
There are a few isolated cases for which tractable solutions do exist. Some useful results on simple
birth death process is given by Abou-El-Ata [2].
1.10 STEADY-STATE SOLUTION FOR THE M/M/1 MODEL The density functions for the interarrival times and service times for the M/M/1 queue are given,
respectively, as
21
( );tot Δ+Δλ
tΔ ( );to Δ
( )to Δ
( );tot Δ+Δμ
tΔ
λλ =n μμ =n
( ),0
),1(0
10
11
ppnppp nnn
μλλμμλ
+−=≥+++−= −+
.
),1(
01
11
pp
nppp nnn
μλ
μλ
μμλ
=
≥−+
= −+
where 1/λ is the mean interarrival time and 1/µ the mean service time. Interarrival times, as well
as service times, are assumed to be statistically independent. Since interarrival and service times are
exponential, and arrival and conditional service rate Poisson, we have
Pr {an arrival occurs in an infinitesimal interval of length Δt } =
Pr {more than one arrival occurs in } =
Pr {a service completion in Δt, given system is not empty } =
and
Pr {more than one service completion in , given more than one in system } = .
Therefore, the M/M/1 problem is a birth-death process with and , for all n. Arrivals
can be considered as “births” to the system, since if the system is in state n (we consider system
state as the number in the system) and an arrival occurs, the state is changed to n + 1. On the other
hand, a departure occurring while the system is in state n sends the system down one to n - 1 and
can be looked upon as a “death”. Hence, the steady-state equations are found from Equations (1.14)
& (1.15) as
(1.18a)
or
(1.18b)
While the M/M/1 queue is a special case of the M/M/c queue, it is instructive to first look in
detail at the M/M/1 system before solving for the more general M/M/c.
1.11 METHODS OF SOLVING STEADY-STATE DIFFERENCE
EQUATIONS We now return to the procedures for solving Equations (1.18). We present three methods for doing
this. The first and probably the most straightforward is an iterative procedure, the second involves
generating functions, and the third involves the concept of linear operators and is analogous to
methods used for differential equations. The reason for presenting the three methods of solution is
that one may be more successful than the others, depending on the particular model at hand.
22
( )
( ) .10
0
∑
∑
∞
=
∞
=
−=
==
n
n
nn
n
npNEL
ρρ
( )
.
......321
........32
1
1
2
32
0
∑
∑
∞
=
−
∞
=
=
+++=
+++=
n
n
n
n
n
n
ρρ
ρρρ
ρρρρ
∑∞
= −=
0;
11
n
n
ρρ
( )[ ]
( ).
11
1/1
2
1
1
ρ
ρρρ
−=
−=∑
∞
=
−
n
n
ddn
( )( )
,1
12ρρρ
−−
=L
( ).
1 λμλ
ρρ
−=
−=L
1.12 MEASURES OF EFFECTIVENESS
The steady-state probability distribution for the system size allows us to calculate the system’s
measures of effectiveness. Two of immediate interest are the expected number in the system and the
expected number in the queue at steady state. To derive these, let N represent the random variable
“number of customers in the system in steady state” and l represent its expected value. We can then
write
(1.19)
Consider the summation
Since ρ < 1,
hence
So the expected number in the system at steady state is
or simply
(1.20)
23
( )
( ) .1
1
1
0
111
ρρ
ρ−
−=−−=
−=−= ∑∑∑∞
=
∞
=
∞
=
pL
ppnpnL nn
nn
nn
q
( ) .1
22
λμμλ
ρρ
−=
−=qL
[ ]
( ) ( ) ,11
0
211∑∑∞
=
∞
=
′−=′−=
≠=′
nn
nn
qqq
pnpn
NNEL
{ }{ }
( )
( ) ( )
.
111
2
2Pr2systemtheinnPr
2
2
ρ
ρρρ
n
n
n n
n
n
p
p
np
p
nnandp
=
−−−−=
≥=
≥≥
=′
∑∞
=
If the random variable “number in queue in steady state” is denoted by and its expected value by
, then we have
(1.21)
Expected queue size of non empty queues, which we denote by Lq’ ;
where P'n is the conditional probability distribution of n in the system given the queue is not empty,
or pn’ = Pr {n in system/n 2}.From the laws of conditional probability
24
( )
( ).
1
1
2101
22
ρ
ρ
pppL
pnL
n
nq
−−−−=
−=′ ∑∞
=
.1
1λμ
μρ −=
−=′qL
{ } ( )
( )
( )( ) .1
1
1
1Pr
nn
nk
nk
n
k
nknN
ρρρρ
ρρρ
ρρ
=−
−=
−=
−=≥
−∞
=
∞
=
∑
∑
( ) λμρλρ
λ −=
−==
11
LW
( ) λμρ
ρλρ
λ −=
−==
1
2q
q
LW
The probability distribution { P'n } is the distribution { Pn } normalized by omitting the cases n = 0
and 1. Thus,
Hence,
(1.22)
As a side observation, it is not at all by coincidence turned out that
Pr{n in system n 2} = ρ2 ,
because it can easily be established for all n that
Pr{N n} = ρn .
The proof is as follows
To complete the basic part of this presentation, expected steady-state system waiting time W and
line delay can be found easily from L and by using Little’s formulas, L = λWq. In the case of
the M/M/1 queue, it thus follows from (1.21) and (1.22) that
(1.23)
and
(1.24)
25
{ } { }0Pr0Pr)0( ==≤= qqq TTW
ρ−== 1)0( 0PWq
Waiting- Time Distributions
Let denote the random variable “time spent waiting in the queue” and represent its
cumulative probability distribution. We are assuming that it is first- come, first-served (FCFS).The
waiting-time random variable has an interesting property in that it is part discrete and part
continuous. Waiting time is, for the most part, a continuous random variable, except that there is a
nonzero probability that the delay will be zero, that is, a customer entering service immediately
upon arrival. Hence we have
= Pr {System empty at an arrival} = q0.
We shall denote the conditional probability of n in the system given that an arrival is about to occur
by These probabilities are not always the same as the with which we have been working,
since the are unconditional probabilities of n in the system at an arbitrary point in time. To find
the distribution of virtual waiting time (i.e., the time a fictitious customer would have to wait were it
to arrive at an arbitrary point in time) , we would use . However, for Poisson input, qn = pn,
It then remains to find for t . Consider (t), the probability of a customer waiting time
less than or equal to t for service. If there are n units in the system upon arrival, then in order for the
customer to go into service at a time between 0 and t, all n units must have been served by time t.
Since the service distribution is memory less, the distribution of the time required for n completions
is independent of the time of the current arrival and is the convolution of n exponential random
variables, which is an Erlang type n. In addition, since the input is Poisson, the arrival points are
uniformly spaced and hence the probability that an arrival finds n in the system is identical to the
stationary distribution of system size. Therefore we may write
26
λλ =n
nμ
⎩⎨⎧
≥≤≤
=).(
),1(cnc
cnnn μ
μμ
λλ =n
⎪⎪⎩
⎪⎪⎨
⎧
≥
≤≤=
− ).(!
),1(!
0
0
cnpcc
cnpn
p
ncn
n
n
n
n
μλμλ
).0(1
)1(1
)!1()()1(1
)!1()()1(1
}.systeminfoundarrival
inscompletionPr{)0(}Pr{)(
)1(0
)1(
0 1
1
1 0
1
1
>−=
−+−=
−−+−=
−−+−=
≤+=≤=
−−
−−
∞
=
−−
∞
=
∞−
−
∞
=
∫
∫ ∑
∑ ∫
∑
te
dxe
dxnxe
dxen
x
pn
tnWtTqtW
t
tx
t
n
nx
n
xn
n
n
nqq
ρμ
ρμ
μ
μ
ρ
μρρ
ρμμρρ
μμρρρ
( ) .) (t eρtW ρ)tμ(q 01 1 ≥−= −−
So the distribution of the waiting time in queue is
(1.25)
1.13 QUEUES WITH PARALLEL CHANNELS (M/M/c) We now turn our attention to the multi server M/M/c model in which each server has an
independently and identically distributed exponential service-time distribution, with the arrival
process again assumed to be Poisson. We consider the case in which there are c servers and make
use of the prior theory developed, most specifically equation (1.16), to develop this model. Clearly,
since the input is Poisson and service exponential, we have a birth-death process. Hence for
all n, and it remains to determine prior to being able to use (1.16).
If there are more than c customers in the system, all c servers must be busy with each putting out at
a mean rate µ, and the mean system output rate is thus equal to cµ. When there are fewer than c
customers in the system, say n < c, only n of the c servers are busy and the system is putting out at a
mean rate of nµ. Hence, µn may be written as
(1.26)
Utilizing (1.26) in equation (1.16) and the fact that for all n, we obtain
(1.27)
In order to find po, we again use the condition that probabilities must sum to 1, which gives
27
.!!
11
00
−−
=
∞
=− ⎟⎟
⎠
⎞⎜⎜⎝
⎛+= ∑ ∑
c
n cnncn
n
n
n
ccnp
μλ
μλ
μλ /=r μλρ ccr // ==
.!!
11
00
−∞
=−
−
=⎟⎟⎠
⎞⎜⎜⎝
⎛+= ∑∑
cncn
nc
n
n
ccr
nrp
).1/(/1
1!
!
!!
0
<=−
=
⎟⎠⎞
⎜⎝⎛=
⎟⎠⎞
⎜⎝⎛=
∑
∑∑∞
=
∞
=
−∞
=−
ρcrcrc
rcr
cr
cr
cr
ccr
c
m
mc
cn
cnc
cncn
n
).1/()1(!!
11
00 <=⎟⎟
⎠
⎞⎜⎜⎝
⎛−
+=−−
=∑ ρ
ρcr
cr
nrp
cc
n
n
;1)/( <μλ c
.)1(!
11
1!!
!!
!)()(
20
0
1
0
1
1
0
1
0
011
ρρ
ρρρ
ρρ
ρ
ρρ
ρ
−=
⎟⎟⎠
⎞⎜⎜⎝
⎛−
−==
==
−=−=
∑
∑∑
∑∑
∞
=
−∞
=
∞
=
−
∞
+=
∞
+=
cpr
dd
cpr
dd
cpr
mc
prm
cpr
pcc
rcnpcnL
c
c
m
mc
m
m
cm
m
c
cn
n
cnn
cnq
As in section 1.5, we let and . Then we have
Now consider the infinite series in the above equation:
Therefore we can write,
(1.28)
Note that the condition for existence of a steady-state solution here is that is, the mean
arrival rate must be less than the mean maximum potential service rate of the system, which is
intuitively what we would expect. Also note that when c = 1, (1.28) reduces to the M/M/1/∞
equation.
We can now derive measures of effectiveness for the M/M/c/∞ model utilizing the steady-state
probabilities given by Equations (1.27) & (1.28). We first consider the expected queue size Lq, as it
is computationally easier to determine than L, since we have only to deal with pn for n ≥ c .
Thus
28
.02)1(!p
crL
c
q ⎟⎟⎠
⎞⎜⎜⎝
⎛−
=ρρ
μ/1+= qWWWL λ=
,)1(! 02 p
ccrL
Wc
qq ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
==ρμλ
,)1(!
102 p
ccrW
c
⎟⎟⎠
⎞⎜⎜⎝
⎛−
+=ρμμ
.02)1(!p
crrL
c
⎟⎟⎠
⎞⎜⎜⎝
⎛−
+=ρρ
rLL q +=
( ) { } { }
∑∑−
=
−
=
==
−≤===1
00
1
0.
!
systemin1Pr0Pr0c
n
nc
nn
nrpp
cTW
∑ !nr n
.)1(!
1! 0
1
0 ρ−==∑
−
= cr
pnr cc
n
n
( )
.)1(!
1
)1(!10
0
00
ρ
ρ
−−=
⎟⎟⎠
⎞⎜⎜⎝
⎛−
−=
cpr
cr
ppW
c
c
q
Thus,
(1.29)
To find L now, we employ Little’s formula to get Wq, then use Wq to find , and
finally employ little’s formula again to calculate . Thus we get
(1.30)
(1.31)
and
(1.32)
Final result for L could have been directly obtained from Lq by using , which we showed
in section 1.5 to be valid for any G/G/c system.
Although the probability distributions of the waiting times , W(t) and Wq(t), are not needed to obtain
W and Wq , it is useful to obtain them whenever possible so that questions concerning probabilities
of waits greater than specified amounts can be answered. Therefore, we next turn our attention to
the derivation of these distributions, and proceed in a manner similar to that of section 1.12. Letting
Tq represent the random variable “time spent waiting in queue” and Wq(t) its CDF, we have
Now to evaluate recall that it appears in the expression for po as given in (1.28), so that
Thus giving,
(1.33)
29
( ) { } ( ) ..systeminfoundarrival
inscompletion1Pr0Pr nqqq p
ntcn
WtTtW ∑⎭⎬⎫
⎩⎨⎧ ≤+−
+=≤=
( ) ( ) ( )( )
( ) ( )
( )
( ) ( )( ).1)1(!
0
)!1(0
!)(
)!1(0
!!0
0
0
)(0
0
0
00
tcc
q
trcx
c
q
t
cn
cnxc
c
q
cn
txc
cn
cn
n
ec
prW
dxec
prW
dxcn
rxec
prW
dxecnxcc
ccrpWtW
λμ
μ
μ
μ
ρ
μ
μμ
μμ
−−
−−
∞
=
−−
∞
=
−−
−
−−
+=
−+=
−−+=
−+=
∫
∫ ∑
∑ ∫
( ) ( ) .)1(!
1 0 tcc
q ec
prtW λμ
ρ−−
−−=
{ } ( ) ( ) ,)1(!
1Pr 0 tcc
qq ec
prtWtT λμ
ρ−−
−=−=>
{ } ( ) .0Pr tcqq eTtT λμ−−=>>
[ ] ( )[ ] ,)1)((!
1 020
pcc
rdttWTEWc
qqq ⎟⎟⎠
⎞⎜⎜⎝
⎛−
=−== ∫∞
ρμ
For Tq > 0 and assuming FCFS,
Now when n ≥ c , the system output is Poisson with mean rate cµ, so that the time between
successive completions is exponential with mean 1/(cµ),and the distribution of the time for the
n – c + 1 completions is Erlang type n – c + 1. Thus we can write
Putting this result together with (1.33), we find that
(1.34)
From (1.34), we note that
So the conditional probability
Letting c = 1 reduces (1.34) to the equation for Wq(t) of the M/M/1 model given in (1.25). Similar
statements would be true for the other M/M/c measures of effectiveness. We can show that
as given by (1.30). We also see that there is the necessary jump discontinuity in Wq(t), since there is
always a nonzero probability that an arrival has no delay.
30
{ } ( )( )
( )( ).11)1(
1)1(11
1Pr tct ec
ec
ctT λμμ
ρρρ −−− −
−−−−
−−−
=≤
( ) ( )[ ] ( )[ ]( )
( ) ( ) ( )( )( )
( ) ( )( ) ( ) ( )
( )( )( ).1
1101
111
01
111
1111
1
0110
tcqtq
tct
qt
q
ec
We
cWc
ec
ec
c
WeWtW
λμμ
λμμ
μ
ρρρ
ρρρ
−−−
−−−
−
−−−
−−−
−−
−−=
⎟⎟⎠
⎞⎜⎜⎝
⎛−
−−−−
−−−
×
−+−=
⎜⎜⎜⎜⎜
⎝
⎛
≤≤
<≤=
− ).(!
),1(!
0
0
Kncpcc
cnpn
p
ncn
n
n
n
n
μλμλ
ρ
To find the formula for the CDF of the system waiting time, we first split the situation into two
separate possibilities, namely, those customers having no line wait [probability Wq(0)] and those
whose system wait is a line delay plus a service time [probability 1 - Wq(0)]. The first of these two
classes of customers has a CDF which is identical to the exponential service–time distribution, with
mean 1/µ; the second has a CDF found as the convolution of the service-time distribution with a
second exponential distribution having mean 1/(cµ - λ), the latter representing the CDF of the line
waiting time, given that Tq > 0(see earlier in this section). This convolution can be also written as
the difference of the two exponential functions,
Thus the overall CDF of M/M/c system waits may be written as
1.14 QUEUES WITH PARALLEL CHANNELS AND TRUNCATION
(M/M/c/K) We now take up the parallel-server birth-death model M/M/c/K, in which there is a limit K placed
on the number allowed in the system at any time. The approach here is identical to that of the
infinite-capacity M/M/c except that the arrival rate λn must now be 0 whenever n ≥ K. It then
follows from (1.27) that the steady-state system-size probabilities are given by
(1.35)
The usual boundary condition that the probabilities must sum to 1 will yield p0. Again, the
computation is nearly identical to that for the M/M/c, except that now both series in the computation
are finite thus there is going to be no requirement that the traffic intensity be less than 1. So
31
.!!
11
00
−
=−
−
=⎟⎟⎠
⎞⎜⎜⎝
⎛+= ∑∑
K
cnncn
nc
nn
n
ccnp
μλ
μλ
μλ /=r :/ cr=ρ
∑∑=
−
=− =
K
cn
cncK
cncn
n
cr
ccr ρ
!!
⎪⎪⎩
⎪⎪⎨
⎧
=+−
≠−
−
=
+−
),1()1(!
),1(1
1!
1
ρ
ρρ
ρ
cKcrcr
c
cKc
⎪⎪
⎩
⎪⎪
⎨
⎧
=⎟⎟⎠
⎞⎜⎜⎝
⎛+−+
≠⎟⎟⎠
⎞⎜⎜⎝
⎛−
−+
=−−
=
−−
=
+−
∑
∑
).1()1(!!
),1(1
1!!
11
0
11
0
1
0
ρ
ρρ
ρ
c
n
cn
c
n
cKcn
cKcr
nr
cr
nr
p
1≠ρ
,1
1!
!)(
!
)(!
)(
10
1
10
1
10
1
0
1
⎟⎟⎠
⎞⎜⎜⎝
⎛−
−=
=−=
−=
−=
+−
−
=
−
+=
−−
+=
−−
+=
∑∑
∑
∑
ρρρ
ρρ
ρρ
cKc
cK
i
icK
cn
cnc
K
cn
cncn
c
K
cnnq
dpd
crp
icrp
cncrp
rcncc
rp
pcnL
[ ]..)1)(1(1)1(!
12
0 cKcKc
q cKc
rpL −+− +−−−−
−= ρρρ
ρρ
1=ρ
To simplify, consider the second summation above, with and
Thus,
(1.36)
We next proceed to find the expected queue length as follows ( )
or
(1.37)
For , it is necessary to employ L’Hospital’s rule twice. To obtain the expected system size,
recall from our work with the unrestricted M/M/c model that L = Lq+ r. However, for the finite-
waiting-space case, we need to adjust this result (and little’s formula, as well), since a fraction PK of
the arrival do not join the system, because they have come when there is no waiting space left. Thus
the actual rate of arrivals to join the system must be adjusted accordingly. Since Poisson arrivals see
32
).1(/)1(/ KqKqeffq prLpLLL −+=−+=+= μλμλ
)1( Kp−λ
)1( Kr ρ−
μλρ ceffeff /=
.1
),1(
eff
Keff
LWW
pLLW
λμ
λλ
=−=
−==
⎪⎪⎩
⎪⎪⎨
⎧
=+
≠−−
=+
),1(1
1
),1(1
11
0
ρ
ρρρ
K
pK
⎪⎪⎩
⎪⎪⎨
⎧
=+
≠−−
=+
),1(1
1
)1(1
)1(1
ρ
ρρρρ
K
pK
n
n
⎪⎪⎩
⎪⎪⎨
⎧
=+−
≠−
+−
−=
),1()1(2)1(
),1(1
)1(1
ρ
ρρ
ρρρ
ρ
KKK
K
L
K
q
./ μλρ c=
time averages (the PASTA property), it follows that the effective arrival rate seen by the server is
. We henceforth denote any such adjusted input rate as λeff . The relationship between L
and Lq must therefore be reframed for this model to be
.
We know that the quantity must be less than c, since the average numbers of customers in
service must be less than total number of available servers. This suggests the definition of
something called , which would thus have to be less than 1 for any M/M/c model even
though no such restriction exists on the value of
Expected value for waiting times can be readily obtained by use of Little’s formula as
(1.38)
For M/M/1/K, all of the above effective measures reduce to considerably simpler expression, with
key results of
(1.39)
(1.40)
and
(1.41)
33
)1( 0pLL q −+= μλ /)1(1 0 Kpp −=−( )Kpp −=− 1)1( 0 λμ
[ ][ ]
[ ][ ]
).1(1
)/(/)(
lim
)()(
lim
1
0
1
00
1
00
−≤−
=
=
⎪⎭
⎪⎬⎫
⎪⎩
⎪⎨⎧
ΔΔ+
ΔΔ+=
⎪⎭
⎪⎬⎫
⎪⎩
⎪⎨⎧
Δ+Δ
Δ+Δ=
∑
∑
∑
−
=
−
=→Δ
−
=→Δ
Knpp
pp
pttoptto
ptotptot
K
n
K
n n
n
K
n n
n
t
K
n n
n
t
λ
λ
λ
λ
λ
λ
{ } ∑−
= ⎭⎬⎫
⎩⎨⎧ ≤+−
+=≤=1
,.systeminfoundarrival
inscompletion1Pr)0(Pr)(
K
cnnqqq q
ntcn
WtTtW
{ }{ }
{ }∑ =
=
=
K
n n
n
n
pn
pn
nq
0.systeminoccurtoaboutarrivalPr
.systeminoccurtoaboutarrivalPr
occurtoaboutarrivalsysteminPr
with . Note that this final relationship implies , which when
rewritten as verifies that the system’s effective output rate must equal its
effective input rate.
The derivation of the waiting-time CDF is somewhat complicated, since the series are finite, though
they can be expressed in terms of cumulative Poisson sums, as we shall show. Also, it is now
necessary to derive the arrival point probabilities { qn }, since the input is no longer Poisson because
of the size truncation at K, and qn ≠ pn .
We use Bayes’ theorem to determine the qn , so that
We note in passing that had this same analysis been performed for M/M/c/∞, then the final portion
of the equation above would be equal to Pn, since PK goes to 0 when the capacity constraint is
removed (i.e., K goes to infinity). Thus it follows for M/M/c/∞ that qn = pn.
Finally to get the CDF Wq(t) for the line delays, we note, in a fashion similar to the derivation
leading to (1.34), that
34
.))!()(1()0(
)!()()0()(
1
1
0
∑ ∫
∑ ∫−
=
∞−
−
−
=
−−
−−+=
−+=
K
cn t
xccn
nq
K
cn
txc
cn
nqq
dxecnxccqW
dxecnxccqWtW
μ
μ
μμ
μμ
.!
)(1
!)()0()(
1
0
1
0
1
∑ ∑
∑ ∑∑−
=
−
=
−
−
=
−
=
−−
=
−=
−+=
K
cn
cn
i
tci
n
K
cn
cn
i
tciK
cnnnqq
ietcq
ietcqqWtW
μ
μ
μ
μ
Since there can not be arrivals joining the system whenever they encounter K customers. It follows
that
After simplification we get
1.15 QUEUES WITH IMPATIENCE The intent of this part is to discuss the effects of customer impatience upon the development of
waiting lines of the M/M/c type. These customers may be easily extended to other Markovian model
in a reasonably straight-forward fashion and will not be explicitly pursued.
Customers are said to be impatient if they tend to join the queue only when a short waiting is
expected and tend to remain in line if the wait has been sufficiently small. The impatience that
results from an excessive wait is just as important in the total queueing process as the arrivals and
departures. When this impatience becomes sufficiently strong and customers leave before being
served, the manager of enterprise involved must take action to reduce the congestion to levels that
customers can tolerate. The models subsequently developed find practical application in this attempt
of management to provide adequate service for its customers with tolerable waiting. Queueing with
impatient customers are studied by [5,12,15] and with multiple heterogeneous servers by [6,7].
M/M/1 queue with impatient customers of higher priority is studied by Choi B. D. [18].
Impatience generally takes three forms. The first is balking, the reluctance of a customer to join a
queue upon arrival; the second reneging, the reluctance to remain in line after joining and waiting;
and the third jockeying between lines when each of number of parallel lines has its own queue.
35
1.15.1 QUEUEING WITH BALKING
1.15.1.1 M/M/1 BALKING
In real practice, it often happens that arrivals become discouraged when the queue is long and do
not wish to wait. One such model is the M/M/c/K; that is, if people see K ahead of them in the
system, they do not join. Generally, unless K is the result of a physical restriction such as no more
places to park or room to wait, people will not act quite like that voluntarily. Rarely do all
customers have exactly the same discouragement limit all the time.
Another approach to balking is to employ a series of monotonically decreasing functions of the
system size multiplying the average rate λ. Let nb be this function, so that nλ = nb λ and
0 ≤ 1+nb ≤ nb ≤ 1 ( n > 0, ob ≡ 1).
For example, using (1.39) when c = 1 gives
np = ∏=
−n
i i
iop
1
1
μλ
= ∏=
−⎟⎟⎠
⎞⎜⎜⎝
⎛ n
ii
n
o bp1
1μλ
Possible examples that may be useful for the discouragement function nb are 1/(n + 1) , 1/( 2n + 1) ,
and ne α− . People are not always discouraged because of queue size, but may attempt to estimate
how long they would have to wait. If the queue is moving quickly, then the person may join a long
one. On the other hand, if the queue is slow-moving, a customer may become discouraged even if
the line is short. Now if n people are in the system, an estimate for the average waiting time might
be n/μ , if the customer had an idea of μ. We usually do, so a plausible balking function might thus
be nb = μα /ne− . Also note that the M/M/1/K model is a special case of balking where ib = 1 for
0 ≤ i ≤ K − 1 and 0 otherwise.
In dealing with problems of queueing, several writers (Kolmogorovv [58], (1932); Erlang [27];
Kendall [50], [51], (1951, 1953); Lindley [62], (1952); Takacs [83], (1955)) have discussed the
situation where queue stability is obtained by assuming that the demand for service does not
overload the service mechanism. Thus λ, the average number of arrivals per unit time, is assumed to
be less than µ, the average number of departures per unit time, so that their ratio, ρ, is less than
unity. Kawata [45], (1955), on the other hand, has shown that queue stability can also be obtained
by assuming that, although arrivals occur more frequently than departures, some arrivals choose not
36
to join the queue. In theory this case can be included in the original one, simply by supposing. λ to
be computed only from the values provided by those who actually join the queue. However, if the
decision to join or not depends on some random variables, it is sensible to inquire into the
relationship between these variables and those which characterize the queue, such as queue length
and waiting time.
The factors which influence the decision of a person to join a queue or not may be considered under
two general headings: (a) those relating to the importance of being served, and (b) those relating to
the obstacle which the queue presents, namely the waiting time which he must experience. It is
obvious that the waiting time cannot be found without a knowledge of the service times of all those
in the queue; we shall, therefore, make the simplifying assumption that the individual measures the
obstacle presented by the queue by its length when he arrives, which will be denoted by k(t).
The factors included in (a) may be much more complicated, and may produce an opinion ranging
from absolute urgency, so that a queue of arbitrary length will be joined, to absolute indifference, so
that no non-zero queue will be joined. It will be assumed that these factors have been weighed by
the individual before he arrives, and have produced in his mind an integer K, which is the greatest
queue length that he will tolerate. If then he observes k(t) ≤ K on arrival, he joins the queue; but if
k > K, he goes away and does not return. We assume that the values K chosen by the various
individual arrivals may be regarded as being random samples from a certain distribution—the
balking distribution. We shall sometimes allow K to be infinite with non-zero probability, so that a
finite proportion of the arrivals will join any queue. Here, we assume that if a person joins a queue,
he must remain for service. In another paper we will permit him to test sequentially whether to stay
or go, while he waits.
While the principal interest here is ρ ≥ 1, it should be noted that the classic queueing cases are
included, and that the appropriate results can be obtained by letting K → ∞ when ρ < 1.
These results are (implicitly) special cases of a general set-up considered by Kendall &Reuter, [53]
(1957). We derive them by assuming equilibrium, and investigate them numerically for various
balking distributions.
37
1.15.1.2 DIFFERENTIAL EQUATIONS
Suppose both arrivals and departures occur as events of homogeneous Poisson processes, of density μλ, , respectively. Let
P(x, t) = Pr (k ≤ x at time t), F(x) = Pr (K< x),
Q(x,t) = 1 - P(x, t), G(x) = 1 - F(x),
p(x, t) = P(x, t)-P(x-l,t), f(x) = F(x) -F(x-1). Note that in general p (0, t) = P(0, t)≠ 0; this is the probability that no queue exists at time t. Also
f(0) = F(0) = 0; this is the probability that an individual is absolutely queue-resistant. The
distribution of K will be called the balking distribution.
Given a queue of length x, then the probability that an arrival joins it = Pr (his balking value )x≥ = G(x-1)
The build-up of differential equations, following Feller, is
p(x, t + Δ t) = [ 1 - ( Δ+ )μλ t] p(x, t) +μ p(x + 1, t)Δ t + λ p(x - 1, t) G(x - 2)Δ t + λ p{x, t) F(x - 1 )Δ t+ 0(Δ t)2, where the four contributions on the right-hand side are from (a) no arrivals or leavers in Δt, (b) one leaver in Δt,
(c) one arrival in Δt who joins,
(d) one arrival in Δt who balks,
respectively.
Take p(x, t) from both sides, divide by Δ t, and take the limit Δt → 0
( ) ),1(),()2(),1(),1(),()(, −+−−++++−=⎟⎠⎞
⎜⎝⎛∂∂ xFtxpxGtxptxptxptxpt
λλμμλ
where, if x = 0, we delete μ in the first term; F( - l) = 0 = F( -2). Add over x, giving
( ∂∂ / t)P(x,t) = μ p(x + 1,t) -λ p(x,t)G(x - 1) (1.42) Writing λ G(x) = λ x, (1.42) can be reduced to a form similar to the equation for a birth-and death process given by Feller [28], (1957), but differing both with respect to one subscript and with respect to the initial equation, namely
38
)/( t∂∂ P(x,t) = λ x-1P(x - l,t)-(μ +λ x-1)P(x,t)+μ P(x + l,t). If, however, each person must join the queue, so that F(x) = 0 for all x, then (1.42) becomes
a special case of the birth-and-death equation.
Using a method suggested by Koopman [59], (1953) we can give a method for computing solutions
of (1.42) in cases where they exist. Let φ (x,s) be the Laplace transformation of p(x,t).
Transforming, (1.42) becomes
-λ G(x - 2) φ (x - 1,s)+( λ G(x - 1)+ μ )φ (x,s)- μ φ (x + 1),s) = δ x ,
whereφ (-2, s) =φ ( - 1, s) = 0, δ x = 1 for x = 0 and 0 otherwise, thus assuming the queue empty at t = 0. Writing
),1(/),(),( sxsxsx −= φφψ and using the equations corresponding to x = 1,2,..., it is seen that ψ( 1, s) may be written as a
continued fraction
ψ (1,s) = λ /B1 - λμ G(0)/B2 - λμ G(1)/B3 ........... Substituting this value back into the equation for x = 0, we find φ (0,s), and hence eachφ (x,s).
Values of p(x,t) may then be found by the numerical inversion of the Laplace transform.
1.15.1.3 EQUILIBRIUM DISTRIBUTIONS
If equilibrium distributions of queue length exist as t→ ∞, they will be denoted by suppressing the
letter t, and can be found from (1.42) by setting the left side equal to zero
P(1)= ρ p(0), p(x + 1) = ρ G(x - l)p(x) (x = l,2,...). (1.43)
Defining c0 = c1 = 1, cx = )(2
0
iGx
∏−
(x = 2,3 …)
this can be written p(x) = ρ xcx p(0 ). (1.44)
Summing, 1 = P(0) ∑∞
0
ρ xcx
Kawata [50], (1955) and Kendall & Reuter [53], (1957) have shown that the convergence of the
series ∑∞
0ρ xcx is necessary and sufficient for equilibrium to be attained, replacing the classical
condition p < 1 (which is contained); the condition is that p(0) > 0.
39
Thus, the tails of the balking distribution are proportional to the ratio of ordinates of the queue length distribution, and when p is known, either may be computed from the other. From (1.43), we have (if p(x), p(x + 1) ≠ 0)
( ))1()2(
)()1(
)1()0()()1()(
++
−+
=−−=xpxp
xpxp
ppxGxGxf (1.45)
so we must have p2(x+ 1) ≥ p(x)p(x + 2). (1.46) if p(n) ≠ 0 but p(n + 1) = 0, then from (1.43) we have G(n - 1) = 0 and so p(x) = 0 for all x > n.
This is the case where there is complete balking for queues of length n or more. Any finite
distribution of queue-length satisfying (1.46) is attainable in this way; the condition for equilibrium
will be satisfied for all ρ.
Any infinite distribution of queue-length (satisfying (1.46)) will correspond to a balking distribution
(from (1.45)); there will be a positive probability that K is infinite
(i.e. G(∞) ≠ 0)
unless 0)(
)1(lim =+
∞⎯→⎯ xpxp
x (1.47)
If (1.47) is not satisfied, there is an upper limit to p for equilibrium to be attained. We have
cx ~ A(G(∞))x, so Σρ x cx converges only if
ρ <)(
1∞G
=)1(
)(lim+∞→ xpxp
x
The reverse problem, of finding p(x) when f(x) is given can be solved, at least numerically, in every
case. However, there are some algebraic difficulties in the three steps of an, analytical solution:
(a) expressing ρG(x) in a convenient form, (b) evaluation of cx, and (c) summing the series Σρ x cx .
1.15.1.4 GENERATING FUNCTIONS
Let =),( tsη )1(),(0
stxps x −=∑∞
),(0
txps x∑∞
)(),1(),(0
xFtxpsts x += ∑∞
ξ
40
Summing (1) after multiplication by s x , we obtain
{ } ),(),0(),(),0(1
),( tsstptss
tpsts
tξληλμλη
+−⎟⎠⎞
⎜⎝⎛ −+−=⎟
⎠⎞
⎜⎝⎛
−∂∂
Letting t → ∞ with the usual change of notation, we have (assuming equilibrium) 0)()0()()( 2 ==−− spspsss ξηρη (1.48) with s = 1 )1(1)0()0( ρξρη +−== p
and since 0 < p(0) 1≤ , 1)1(1≤ξ<
ρ−ρ
It will be noted that )1(ξ is just the asymptotic probability that an individual balks. Recalling that
ρ was calculated for all the arrivals, whether they joined or not, it can now be seen that an effective
value of traffic intensity, computed only from those who join the queue, say ρ ', can be written
ρ ' = ρ - ρ )1(ξ . Writing now ρρρ η mxxp ),(),( (mean queue length) etc to denote the dependence on ρ , we have from (1.44)
)0(/)0(/)()0()(000
sxx
xx
xxx ppccscsps ρρ ρρρρη === ∑∑∑
∞∞∞
(1.49)
and using (1.48) ⎟⎟⎠
⎞⎜⎜⎝
⎛ −−=
)0(11
)0()( 2
sps
psp
sρ
ρρ
ρξ (1.50)
Thus the queue length and the Baltic distributions are uniquely determined once p )0(ρ is known as the function of ρ . We have from (1.44)
pxx
x mxcxcp
xpp
−=⎭⎬⎫
⎩⎨⎧
−+∂∂
=∂∂ ∑
∞
0logloglog)(log ρρρρ ρ (1.51)
which essentially determines p ρ (x) when m ρ is known. Also, the variance of te queue length,
(1.52) ρρρ ρ
ρρ
ρυ mxpmxmxxp ppp ∂∂
=∂∂
−=−= ∑∑∞∞
)()())((0
2
0
41
[ ].)1(2)1(11 ρρρ ξξ
ρρ
−′−−
=m
( ))]}1(4)1(5)1()[1()]1()1(4)1(4)1([1{
1222
2 ρρρρρρρρ ξξξρξξξξρρρ
+′+′′−−′++′−−
=v
),,.......,1,0()1()( nxCxp xnxx
n =−= − ππ
. ; ∞→→+
=∞<<−
= ρn as ρn
nρmnρρ
ππρ 0,
1
x, n
, n-x xxn
nf(x)
x,n
, n-x xn
xnG(x)
⎪⎩
⎪⎨⎧
≤
≤≤++
+=
⎪⎩
⎪⎨⎧
≤
≤≤+−−
=0
10)2)(1(
11
0
10)2(1
(since 1)( =∑ xpρ ). )( and )( ss ρρ ξη each satisfy a simple partial differential equation; from (8) we have log )(sρη = log ρη (0) + g )(1 sρ
hence ηρ
ρ log⎟⎟⎠
⎞⎜⎜⎝
⎛∂∂
−∂∂
ss )(sρ = .)0(log ρρ −=η
ρ∂∂
ρ m
Also from (1.50)
,1
21log
),(log)0(log)( 22
p
p
m
mss
s
sgss
−=
+−−=ξ⎟⎟⎠
⎞⎜⎜⎝
⎛∂∂
−ρ∂∂
ρ
ρ+ρ−η=ξ
ρ
ρρ
where g1 ( ) and g2 ( ) are used to denote ' a function of ' and ' another function of ' in the above equations. Differentiating (1.48) and setting s = 1 gives (1.53) Differentiating (1.48) twice and setting s = 1 gives
(1.54)
1.15.1.5 SOME EXAMPLES
(i) Binomial queue
Condition (1.46) is satisfied by the finite distribution
where 0 < π < 1. We find
The corresponding balking distribution is given by
42
.02
⎟⎟⎠
⎞⎜⎜⎝
⎛+
=⎟⎟⎠
⎞⎜⎜⎝
⎛++
=⎟⎟⎠
⎞⎜⎜⎝
⎛+
=ρn
nρ, vρnρsn(s), η
ρnn)(p ρ
n
ρ
n
ρ
,)210()1()( 11 ,........, , x Cxp xNa
NxN =+= −−
−−+ χχ
,1)()(
)1(limN
Gxp
xpx
=∞=+
∞→
N. ρ asρN
NρN; mρ, Nρ ρ →∞→−
=<<+
= 01 χ
χ
),210()2)(1(
11)()2(1)( ., ........, , x
xxNN-x, f
xNxNxG =
++=
+++
=
.)(,)0(2
⎟⎟⎠
⎞⎜⎜⎝
⎛−
=⎟⎟⎠
⎞⎜⎜⎝
⎛−−
=⎟⎠⎞
⎜⎝⎛ −
=ρN
Nρ, vsN
NsN
Np ρ
NN
ρρηρ
ρρ
,, ......, , x xx
x; fx
xG )210()2)(1(
1)(2
1)( =++
=+
=
.,......, , x x!eρxp
ρx
)210()( ==−
and is independent of n. As ρ →∞, π→1 and the queue is almost always of length just n. The
relations (1.49) to (1.52) may be verified immediately:
(ii) Negative binomial queue
An example of an infinite queue-length distribution is
where χ > 0 and N > 1. We have
The balking distribution is
.
with a probability l/N at x = ∞. The balking distribution is independent of χ:
(iii) Poisson queue
Each of the queue distributions in (i) and (ii) approaches the Poisson form as n, N →∞
We now have G(∞) = 0, so 0 < ρ < ∞; mρ = ρ = υ ρ. The balking distribution becomes
43
.)(,)0( sesep ρρρ
ρρ η +−− ==
,... 0,1,2,x v2m-x-exp Axp
2
)()()( ==
which may be regarded as a discrete analogue of the Cauchy distribution
(iv) Type III ordinates
Another possible infinite queue-length distribution is
)( )()( 0,1,2,....xeaxAxp xy =+= −λ
where a, v, λ > 0; A is a complicated function of a, v and λ. Here
.1011
y
aap, so -λ e
y
aa p
y
aa)G( ⎟
⎠⎞
⎜⎝⎛ +
<<⎟⎠⎞
⎜⎝⎛ +
=⎟⎠⎞
⎜⎝⎛
+=∞
The balking distribution is
)210()1)(1(
)2( , ...,,x y
xaaxaa)G( =⎥
⎦
⎤⎢⎣
⎡+++
++=∞
which is independent of λ . For p near yaya /)1( + , we have approximately
.1
2
11log
1+
+≅−
⎥⎥⎦
⎤
⎢⎢⎣
⎡⎟⎠⎞
⎜⎝⎛ +
+≅
v
a)p(m
pa, uy
aa
p
vpm
If we let v→ 0 we obtain the classic case where every arrival must join the queue
.1011
<<==∞−−
−= p, -λe, p), G(
λe
λxep(x)
(v) Normal ordinates
A very simple result is obtained when we assume that the queue-length distribution is
44
where m and v are very nearly the mean and variance of the distribution if v and m2/u are 'large', say
both > 9. We find
.0 ,/)-exp( ,0)( 21 ∞<<==∞ pumpG
The balking distribution is Pascal (geometric)
,,...,,x λ-λx/v, fx-xG x )210()1()()1(exp)( ==+= (1.55)
where λ = exp v-1and is independent of m. Denoting the mean of this distribution by M = λ /(1 – λ)
we have
.1loglog1
21
−
⎥⎦⎤
⎢⎣⎡ +
=≅+=≅M
Mν p, νν mm pp (1.56)
The relation mp = const. + vp log p cannot hold exactly for any distribution whatever, as from (11) it
implies first vp = c = const, and then mp < 0 for p < exp — (c/v).
(vi) Deterministic balking
One case in which these calculations are easy is the following: each person possesses exactly the
same degree of queue resistance, i.e. the balking distribution is deterministic, f(x) = 1 for x = K and
zero otherwise. Although rather trivial, this case will be important in an application to be mentioned
subsequently. We have
⎩⎨⎧
⎩⎨⎧
≤++≤≤
=≤
−≤≤=
x,K,Kx
c x,K
,KxG(x) x 20
1010
101
;1
10 2+−−
= Kp pp)(p
⎪⎩
⎪⎨⎧
≤+
+≤≤−−
= + x,K
,Kxpp
pp(x)
xK
20
101
12
From (1.49) and (1.50), or direct from the definitions, we have
ξp .81
811
1)(1
1 2
21
28
p)(p
p-p s ηp
-p-p(s)
k
KpK,K
K −−
−==
+
++
+
Hence, from (1.53) and (1.54), or from (1.51) and (1.52), we have
,1
)2(1 2
2
+
+
−+−
−= K
K
p ppK
ppm
45
.)1(
)2()1( 22
22
2 +
+
−+−
−= K
K
p ppK
ppν
In the trivial situation where each individual insists on immediate service, K = 0, and
.)1(1 2p
p, νp
pm pp +=
+=
In the classic situation, in which each individual must join the queue, K = ∞ and
.11 2p)(
p, νp
pm pp −=
−=
Each of (i) to (v) above has led to a balking distribution which is unmoral with mode at x = 0. It
seems very difficult to obtain explicit results for a balking distribution with mode not zero;
numerical calculations were carried out for p = 2, 3, 4, 5, 6, 7, for each of the following balking
distributions:
(vii) Poisson with mean 10.
(viii) Ordinates of a lognormal distribution f(y) where 5 (log y - 1) is a unit normal
variable.
(ix) Ordinates of a χ2distribution with 10 degrees of freedom,
(x) The Pascal distribution (14) with λ = 10/11.
Table 1 shows the means and variances of the queue-length distributions obtained, together with
those of the ' input' balking distributions. Also, in the last column, are given the approximate values
for the Pascal distribution (x) obtained from (1.56). It will be seen that the approximation is very
close except when p = 2; here m2/v is only 5.5.
46
Table 1.3: Mean and variance of queue length for various balking distributions
Poisson Lognormal χ2 Pascal Formulation (15) Input Mean Variance
10 10
10.57 19.5384
9.498 19.23
10 110
10 110
p = 2 Mean Variance
10.320206 4.908937
10.212608 6.506500
9.475843 6.110196
7.823407 9.726074
7.772564 10.49205
p = 3 Mean Variance
11.941052 3.351061
12.578738 5.382238
11.633753 4.725268
12.026812 10.467543
12.026641 10.49205
p = 4 Mean Variance
12.826379 2.844219
14.078101 5.074961
12.914084 4.248282
15.041116 10.490947
15.045024 10.49205
p = 5 Mean Variance
13.430370 2.582158
15.192921 4.929776
13.830718 4.032884
17.363218 10.463681
17.386325 10.49205
p = 6 Mean Variance
13.885518 2.416736
16.086535 4.858583
14.547050 3.839912
19.284075 10.533106
19.299236 10.49205
p = 7 Mean Variance
14.248864 2.301017
16.831880 4.813526
15.130198 3.728680
20.919959 10.485757
20.916585 10.49205
1.15.1.6 SOME GENERALIZATIONS
An interesting application of queueing with balking is furnished by the problem of a sequence of
transporting mechanisms which move discrete units of cargo. In the terminology developed by the
Department of Engineering of the University of California at Los Angeles [88] (1953), each
transporting agency constitutes a 'link', and the place where two such mechanisms transfer their
loads is a ' node'. If there is room at a node for the storage of S items, the number in storage at time t
may be regarded as a queue of length 0,1,..., S. If the link setting down items carries A1 units at a
time, and the link picking up items carries A2 at a time, then we must assume S ≥ A1 + A2 - 1, to
prevent the process stopping altogether. The time required for the journeys of the links (in which we
absorb the time required for pick up or set down) constitute the inter-arrival and inter-departure
times of the queue at the node between them. If the storage k(t) at the node is such that the arriving
47
link cannot set down its cargo, i.e. if S – k(t) < A1 the link goes back and arrives again after another
inter-arrival time. If the storage when removing link arrives satisfies k{t) < A2, so that a full load is
not available, it also goes back and forth until the inequality is reversed.
Thus, considering only two links separated by one node, the following generalizations of the
probabilistic queueing model discussed in our introduction are suggested: (a) bulk arrivals and
departures, (b) balking distributions associated with arrivals and departures, (c) a finite number of
states possible. Also, the cargo-handling case requires deterministic balking; we shall begin with
stochastic balking, and then specialize for cargo-handling.
Let K1 and K2 be two integers such that when A1 items arrive, they are added to the queue when k(t)
≤ Kt and not otherwise, and when the removal mechanism arrives, it takes away A2 items if k(t)≥ K2
and not otherwise. Let Fj(x) = Pr (Kj ≤ x) = 1 - Gj(x).
)()1()( x,tpμΔtλΔtΔtx,tp −−=+
)]1()()1()()[1( 1111 −−−+−−+ AxG,tAxpxFx,tpμΔtλΔt
),()]()()()()[1( 2222 ΔtοAxF,tAxpxGx,tpλΔtμΔt ++++−+
where departures as well as arrivals are now partitioned into two cases. Also, we have special cases
not only for x = 0, but for x less than A1 or A2. However, this can be dealt with by conventions
regarding negative arguments. We put
p (x) = 0 for x < 0 or x > S,
F1(x) = 0 for x < 0,
F2(x) = 0 for x ≤ 0.
Passing to the limit, and letting t→ ∞ (assuming equilibrium) we obtain
)()()()}()1({)()1(0 22221111 AxpAxFxpxFxpGAxpAxpG ++−+−+−−−=
(x = 0, 1, …., S).
These S + 1 equations are linearly dependent; there is the further relation∑ = .1)(xp The system of
equations may be written Bp = a, where
P = {p(0),p(1),...,p(S)}, a = {0,0,.... 1}
48
( ) { }t
nnrt Δ
=→Δ
presentcustomersaretherewhenΔtduringrenegesunitPrlim0
and B is an (S + 1) × (S + l) matrix having zeros everywhere except in the last row (where all the
elements are unity), the principal diagonal, the A2th super-diagonal, and the A1th sub diagonal.
If A1 = A2 = l; these equations can be solved exactly as in §3; only a redefinition of cx is needed
∏∏−
=xx
x .jGjGc1
2
2
01 )()(
In case of arbitrary A1 and A2, but with deterministic balking denned by
K1 = S – A1, K2 = A2
(which are the values suggested by the cargo-handling problem), the matrix B simplifies as follows:
(a) the elements in the A1 sub diagonal become – p,
(b) the elements in the A2 super-diagonal become – 1,
(c) the principal diagonal consists of – A2 elements of value p, followed by
S – A1 – A2 +1 ≥ 0
elements of value 1 + p and, finally, A1 elements of value 1.
1.15.2 QUEUEING WITH RENEGING
1.15.2.1 M/M/1 RENEGING
Reneging in single server queues with general service time distribution has been studied by Daley
[23], Rao [74], Cohen[19], Stanford [82] and Baccelietal [9]. Customers who tend to be impatient
may not always be discouraged by excessive queue size, but may instead join the queue to see how
long their wait may become, all the time retaining the prerogative to renege if their estimate of their
total wait is intolerable. We now consider a single-channel birth-death model where both reneging
and the simple balking of the previous section exist, which gives rise to a reneging function r(n)
defined by
r(0) = r(1) ≡ 0.
This new process is still birth-death, but the death rate must now be adjusted to nμ = μ + r(n) . Thus
it follows from (1.39) that
np = ∏=
−n
i i
iop
1
1
μλ
49
.1/ <μλ
= ∏=
−
+
n
i
ino ir
bp1
1
)(μλ (n ≥ 1),
where
1
1
1
1 )(1
−
=
−∞
=⎟⎟⎠
⎞⎜⎜⎝
⎛+
+= ∏∑n
i
i
n
no ir
bpμ
λ
A good possibility for the reneging function r(n) is 2/neα , n ≥ 2. A waiting customer would probably
estimate the average system waiting time as n/μ if n – 1 customers were in front of him , assuming
an estimate for μ were available. Again, the probability of a renege would be estimated by a
function of the form μα /ne .
As was mentioned in the introduction to this section, there is yet an additional form of impatience
called jockeying that is, moving back and forth among the several sub queues before each of several
multiple channels. Though this phenomenon is quite interesting and clearly applicable to numerous
real-life situations, jockeying is analytically difficult to pursue very far, especially when we have
more than two channels, since the probability functions become too complicated and the general
concepts become hazy. Even though partial results can be obtained for the two-channel case, no
particular insight into the multichannel cases is gained from it. If, however, the reader is specifically
interested in this subject, we refer to Koenigsberg [57], (1966).
Consider a queue with a single service channel in which k is the rate of arrival (number of new
arrivals per unit time) and µ is the rate of service (number of departures per unit time, when the
service mechanism is engaged). Then a fundamental result is the following: A necessary and
sufficient condition that the process achieves statistical equilibrium, as time approaches infinity, is
(1.57)
For a complete statement, proof and historical summary of this result, the reader is referred to the
important paper of D. G. Kenda1, [50].
In the past years, a large number of papers have appeared on queues by Riley [76] and Doig [24],
most of which fall into one of the following categories:
(a) Extending known results, of which (1.57) is central, to more and more general situations, by
permitting arrival and departure distributions to be a greater extent arbitrary. A summary of such
50
results will be found in a paper by Kendall, [50], which employs a system of classification proposed
by Lindley, [62].
(b) Consideration of more elaborate systems of queueing: for example queues in tandem, queues
with bulk services, queues with a system of priorities. A paper by Saaty, [80] summarizes number
of such results.
(c) Advances in abstract formulation and rigorous proof.
(d) A more delicate analysis of the mechanism by which results such as (1.57) transpire.
In 1955 Kawata, [45], proposed a system in which potential entrants to a queue might be deterred
by finding too long a queue, and showed that the condition (1.57) may be replaced by the
convergence of a certain power series. Subsequently Kendall and Reuter, [53], treated this problem
quite rigorously, and Haight, [39], has applied it to many particular distributions, under the name
"Queueing with Balking". In this paper we consider a generalization of balking, which will be
called "reneging".
1.15.2.2 FORMULATION
We will assume that the arrival times of persons to the queue constitute a homogeneous Poisson
process with parameter λ, and that the service mechanism produces departure times which also obey
the Poisson distribution, but with parameter µ. However, an arrival to the queue need not join the
queue; if he does so he need not remain for service. If the queue moves too slowly for his purposes,
he may leave and not return. We have therefore the following possibilities for an arrival: (i) balk,
i.e. not join, (ii) join and subsequently renege, i.e. go away, (iii) join and remain for service. Thus
balking is the special case of reneging on arrival.
The following problems may be distinguished:
A. To give a decision scheme for reneging, by means of which an individual can behave
rationally in uncertainty.
B. To investigate the expected result to the individual of such a scheme of decision being
applied.
C. To describe the behavior of a queue in which such schemes are operative among all queuers.
In considering any of these problems, it is first necessary to investigate the decision to renege, the
evidence on which it should be based, and its connection with a decision not to balk. If an
individual were permitted to interview all persons in the queue when he arrived, he might discover
51
wW ≥
kK ≥
from them the total time that he would have to wait for service (which will be denoted by w), and
then base his decision to join or not on the inequalities
(1.58)
where W is some maximum tolerable waiting time. However we must assume w unknown to him;
either he cannot interview the previous queuers or they are unable to say what their service times
will be. It is sensible to permit the queuer this much information: times of arrival (after himself),
times of departure due to termination of service and times of departure due to reneging. In
estimating his chances of obtaining service before W elapses, he will be primarily interested in the
queue before him shortening, whether by service or by renege.
In dealing with balking in [39], the assumption was made that the decision to join or balk was based
on the inequalities
(1.59)
where k represents the queue length encountered on arrival, and K is an individual's "balking value",
i .e . the maximum queue which he will join. It seems reasonable to suppose that the probability of a
person reneging before service will be somewhat greater when the balking value K is only slightly
in excess of the queue length on arrival than when K - k is very large.
But before asserting this dogmatically, we must remember how the value K would be determined by
an individual. If the factor which actually limits his behavior is the magnitude of W then K should
be chosen so that (1.58) and (1.59) are equivalent. But the connecting link between (1.58) and
(1.59) is the rate at which the queue shortens, which consists in part of the service rate µ and in part
of the rate of reneging. The individual has no emperical knowledge of these quantities at the time of
joining, and must therefore be satisfied with some opinion. Consequently the magnitude of the
quantity K - k depends, at least at first, on the opinion of the queuer as well as on objective
characteristics of the queue. He might, for example, believe that a long queue would move quickly
enough for him to tolerate it, and very soon find this to be false. On the other hand, some arrivals
might balk when, had they joined, they would have been served well within their limits.
52
( ) .∞=∞φ
( ) ( )TTn φ=
.0222222 =−− bavaub
abmmmm /
1111cot
2
2
=−++
+++=α
Clearly, a system can be imagined in which reneging would be very rare, if queuers were drawn
from a population with accurate information. It is equally easy to imagine a population of highly
misinformed queuers who would join optimistically and renege frequently.
From the point of view of problem C, it is also useful to know, for persons who renege, when they
do so. It could be argued that their propensity to renege increases with time spent in the queue, since
their information increases. (It might be objected that this suggests that persons most likely to
renege in a given are those nearest service, which seems absurd. However, it is only those who will
ultimately renege that are being considered, and the front of the queue would presumably contain
few such people.)
1.15.2.3 RATIONAL BEHAVIOR IN A QUEUE
The letter t will be used to denote time, and, for convenience, the potential queuer may take the
origin at his time of arrival He is allowed to observe a function n (t), defined to be the number of
departures by time t, among those before him in the queue, 0 ≤ n(t) ≤ k . This is a unit step function
beginning at the origin, and represents his knowledge of the queue. He wishes to find the "best"
member of a class of functions φ (t), having the following properties: (i) non decreasing, (ii)
φ (0) < 0, (iii) he will renege when n(t) and φ (t) intersect, (iv)
Letting T denote the value of t for which , the three possibilities-service, renege
correctly and renege in error- are characterized respectively by the inequalities
w < T, W
T < W < w
T < w < W
Suppose the queuer decides to use a family of hyperbolas with this line as one asymptote and the
line t = 0 as the other. In a rectangular coordinate system based on the angle bisectors of these
asymptotes, let the equation of the family of hyperbolas be
(1.60)
If α is the angle between the (u, v) and (t, φ ) coordinate systems, it is easy to see that
(1.61)
53
- ααα tan2tan2cot2 22 rra =
.11
1
rWk
rtWdk
−=
−−−
is the slope of the asymptotes in the (u, v) system. This will be sufficient to determine b from a. To
find a, we will assume that the individual decides at first how long he is willing to wait for a first
departure, and call this quantity r; after some experience in the queue a more rational method will
be used. Then some calculations show that
(1.62)
,
and from (1.61) and (1.62) he can determine the values of a and b most suited to his needs.
After spending time t1 in the queue, during which d1 departures have been noted, it may be useful to
recompute α, m, a and b in order to make use of the information acquired. The original choice of r
reflected the degree of risk which the individual was willing to run, namely that the effective
attrition rate after the elapse of r would be as little as k / ( W- r). To keep the risk constant, he should
now choose r1 so that
(1.63)
and so continue the process with a new hyperbola.
This procedure does not take into account the possibility mentioned earlier that reneging may occur
less frequently when the individual approaches the head of the queue, and consequently total
attrition will become more nearly a pure service rate µ. If this is true, the queuer will want to keep
account of the method by which the queue shortens, and make some allowance for the declining rate
of renege in his periodic calculations of r.
If no reneging whatsoever is observed among the other queuers, the problem is considerably
simplified, since the distribution theory of service times is known, apart from the parameter µ. Then
the quantity r should be made to depend on a function of k and K:
54
( ) ( )
( )[ ]( )
( )[ ] ./1
/1
when obtained benot willserviceProb,
1
1
/1
∫
∫∞
−−
∞−−
τ=
τ=
=μ=
dzezKK
dyeyK/WK
K/WKkf
Kzkk
W
WKykk
).(1)(Prob)()(Prob)( Prob
1)( Prob
)()()(Prob)( Prob0
WFRWFWwS
Ir
IxdGxFTwsW
−==<=
−=
==<= ∫
w T
In the general case there is obviously an underlying similarity between the formulation presented
here and sequential analysis. But the differences are also marked, and offer substantial obstacles to
the direct use of that method.
Here the plane is divided into two regions instead of three; termination of the process is insured by
the fact that n(t) becomes horizontal in a finite time. Also φ (t) need not be fully specified in
advance, but has been calculated piecewise as the process becomes more fully understood. Finally,
the most important difficulty is the lack of distribution theory, owing to the queue shortening by
reneging as well as by completed service.
1.15.2.4 EXPERIENCE IN THE QUEUE
Let the value to an individual of time t be ξ t, and let the gross value of being served be Ώ. W is a
known constant, but w and T are stochastic variables; let the density and distribution functions of ŵ
be f(x) and F(x), and those of T be g(x) and G(x). Let the mean values be and . Furthermore,
let
s = the event that the individual obtains service
r = the event that the individual reneges
S = the event that the individual could obtain service by waiting
R = the event that the individual must renege eventually.
Then,
55
0)(Prob)( Prob
)(1) ( Prob) ( Prob
=ε=−=
ε=
RsWFS)(r
WFRrsr
)1)(( ε−= WFI
wξ=Ω
).( wWw −=−Ω ξξ
).()())(1()( WFTwWFTIw εξξξξ −Ω−+−−−Ω
),(Pr)21)((
)1()21)((
)1()()()(2)()(
robTWAF
ITWAF
TTWFwWWFWFwWU
−−=
−+−=
−−+−−−=
ε
ε
εε
( )
( ) IWFsS
IWFrS
sR
IWFrRWFSs
/)(1)(Prob
)1/()() ( Prob
0) ( Prob
)1/())(1() ( Prob)(1)(Prob
ε−=
−ε=
=
−−=
ε−=
T
Since T < W, Prob (s | R)= Prob (w < T | w > W) = 0. Let e be the probability of a mistaken dicision
to renege. Then,
and these imply
(1.64)
The integral I is analogous to the Operating Characteristic Function of sequential analysis, or to the
power function in the Neyman-Pearson theory. In the same way corresponds to the ASN function
of sequential analysis. If the individual determines W so that he can lose only the value of his
service time, and the net value of service is
The expected gain by entry into the queue is the sum of the expectations relative to the three
possible outcomes, multiplied by their respective probabilities of occurrence, namely
Measuring time in units of ξ, we are led to define the utility function by
56
wWA −=
Ww =0=T
T
where = the "advantage" of the queue at the time of entry.
The second term of U is never positive, and the first term will be positive or negative depending on
A and ε. If we call the queue "advantageous" when A > 0 and "disadvantageous" when A < 0, and
the queuer "adventurous" or "cautious" according as ε > 1/2 or ε < 1/2, then the sign of the first
term is as follows:
Queuer
Queue Cautious Adventurous
Advantageous + -
Disadvantageous - +
For a queue in the neutral position , the utility can be maximized (to the value zero) by
balking (so that ) or waiting for service (so that Prob (r) = 0), and only the first of these is
always possible.
Although we obtain some interesting results by consideration of U, three facts limit its practical
usefulness: (i) the value of A is not known to the queuer, (ii) the connection between U and any
particular φ is not easy to obtain, and (iii) the function U is not bounded; indeed it is capable of
great variation when µ is changed, but only slight variation when ε, and are changed.
1.15.2.5 STATE PROBABILITIES: For a queue with balking and reneging
Denoting the length of the queue at time t by k ( t ) , let
p(x, t) = Prob [k(t) ≤ x at time t]
q(x, t) = 1 - p(x, t)
r(x, t) = p( x , t ) - p ( x - 1,t )
P(x) = Prob (K ≤ x)
Q(x) = 1 - P(x)
R(x) = P(x)-P(x - 1)
π(x) = a function having the property that the probability of one renege in
Δt is π (x) Δt when the queue contains x members.
57
),(),1()1()1)(1(),1())1(1()1(
)2(),1())1(1)(1()1(),())(1)(1(
),())(1)(1)(1(),(
tOtxtrxtttxrtxtt
xQtxrtxttxPtxrtxtttxrtxwttttxr
Δ++Δ+ΠΔ−Δ−+++Δ+Π−ΔΔ−+
+−−Δ−Π−Δ−Δ++−ΔΠ−Δ−Δ+
+Δ−Δ−Δ−=Δ+
μλμλμλμλ
μλ
[ ]).,1()1(),1()2(),1(
)1(),(),())((),(/txrxtxrxQtxr
xPtxrtxrxtxrt+−+++−−+
+−+++−=∂∂πμλ
λπμλ
).,1()1()1(),(),1(
),1(),(),1(
)2(),1())1(1(),(
),()(),(),(
),(]/[),(]/[
0 0
00
010
0
txrxxQtxrtxr
tjrtjtjr
jQtjrjQtjr
tjrjtjrtjr
tjrttxpt
x x
xx
xxx
x
+++−−+=
++++
+−−+−−+
+−−−=
∂∂=∂∂
∑ ∑
∑∑
∑∑∑
∑
πλμ
πμ
λλ
πμλ
0)1()0( == ππ
)1()()1()1()1( −=++++ xQxrxrxxr λπμ
As previously pointed out, it is impossible to say anything about the relative frequency of reneging
without making some assumption about the degree of sensibility of the population. With a certain
population fixed, however, the probability that the queue will be shortened by one renege in Δt will
depend only on Δt and the length of the queue. Using the system of differential-difference equations
(as explained, for example, in the concluding chapters of Feller's book, [28]) it is possible to
compute the asymptotic state probabilities for the system.
In a time interval Δt, one of the following may take place: (i) no transition. (ii) one arrival balking,
(iii) one arrival joining, (iv) one departure due to service completed, (v) one departure due to
reneging, (vi) more than one transition. Computing the probabilities in this order, we have
where the µ in the first term is omitted for x = 0, and . Then
Summing on x from 0 to x,
If the values r(x,∞) and p(x, ∞) exist, i.e. if the process reaches stability, these values can be found
by setting the time derivative equal to zero. Suppressing the time argument to indicate this, we have
58
)()(
xxy
πμλ
+=
∏−
+=2
0
),2()(n
n jyjQc
1
0
)/()0(−∞
⎥⎦
⎤⎢⎣
⎡= ∑ n
ncr μλ
)0()/()( rcxr xx μλ=
with suitable initial and boundary conditions. Defining and we find and giving explicit solutions for the asymptotic state probabilities.
1.16 TRANSIENT BEHAVIOR In this section we consider the transient behavior of three specific queueing systems, namely,
M/M/1/1 (no one allowed to wait), M/M/1/∞, and M/M/∞ (ample service). This discussion is
restricted to these three models, since the mathematics becomes extremely complicated with the
slightest relaxation of Poisson-exponential assumptions, and it is our feeling that the exhibition of
some fairly simple results is sufficient for our purpose. Even these three transient derivations vary
greatly in difficulty. The M/M/1/1 solution can be found fairly easily, but the problem becomes
much more complicated when the restriction on waiting room is relaxed, or multiple servers are
considered.
1.16.1 TRANSIENT BEHAVIOR OF M/M/1/1
The derivation of transient probabilities { np (t)} that at an arbitrary time t there are n customers in a
single-channel system with Poisson input , exponential service, and no waiting room is a
straightforward procedure , since np (t) = 0 for all n > 1. It begins with oλ = λ, nλ = 0 , n > 0, and
1μ = μ:
( )dt
tdp1 = −μ 1p (t) + λ op (t) ,
59
( )dt
tdpo = −λ op (t) + μ 1p (t). (1.65)
These differential–difference equations can be solved easily in the view of the fact that is always
true that
op (t) + 1p (t) = 1.
Hence Equation (1.65) is equivalent to
dt
tdp )(1 ≡ ,1p (t) = −μ 1p (t) + λ[1 − 1p (t)].
So,
,1p (t) + ( λ + μ ) 1p (t) = λ.
This is just as ordinary first-order linear differential equation with constant coefficients, whose
solution can clearly be seen from the discussion of Section 1.6 to be
1p (t) = C te )( μλ+− + μλ
λ+
.
To determine C, we use the boundary value of 1p (t) at t = 0, which is 1p (0). Thus
C = 1p (0) − μλ
λ+
,
and consequently
1p (t) = μλ
λ+
(1 − te )( μλ+− ) + 1p (0) te )( μλ+− ,
op (t) = μλ
μ+
(1 − te )( μλ+− ) + op (0) te )( μλ+− , (1.66)
since op (t) = 1 − 1p (t) for all t
The stationary solution can be found directly from (1.65) in the usual way by letting the derivatives
equal zero and then, with the use of the fact that op + 1p = 1, solving for op and 1p (M/M/1/K
with K = 1). Also, the limiting (steady–state, equilibrium) solution can be found as the limit of the
transient solution of (1.66) as t goes to ∞, and we find that
60
1p = 1+ρ
ρ and op = 1
1+ρ
.
Existence of the limiting distribution is always assured, independent of the value of ρ = λ/μ, thus it
is identical to the stationary distribution (to see this, put K = 1 in the np expression for the M/M/1/K
of the Section 1.14 ).
To get an even better feel for the behavior of this queueing system for small values of time, let us
graph 1p (t) from Equation (1.66). First rewrite (1.66) in the form
1p (t) = a + b cte− ,
where, of course,
a = μλ
λ+
= 1+ρ
ρ ,
b = −μλ
λ+
+ 1p (0),
c = λ + μ.
In addition, it can be observed that if the initial probability 1p (0) is assumed to be the stationary
probability 1p , then b becomes 0 and 1p (t) becomes equal to this equilibrium value of 1p . In other
words, the queueing process can be translated into the steady state at any time by making the
assumption that the process is already in equilibrium. This property is, in fact, true for any ergodic
queueing system, independent of any assumptions about its parameters.
1.16.2 TRANSIENT BEHAVIOR OF M/M/1/∞
The transient derivation for M/M/1/∞ is quite a complicated procedure, so presentation of it is in
outline form only. A more complete picture of the details can be found in the Gross and Harris [36],
[37], (1985, 1974) and Saaty [78] (1961). The solution of this problem postdated that of the basic
Erlang work by nearly half a century, with the first published solution due to Ledermann and Reuter
[61] (1954), in which they used spectral analysis for the general birth-death process. In the same
year , an additional paper appeared on the solution of this problem by Bailey [10], [11] (1954), and
later one by Champernowne [16] (1956) . Bailey’s approach to the time-dependent problem was via
generating function for the partial differential equation, and Champernowne’s was via complex
61
combinatorial methods. It is Bailey’s approach that has been the most popular over the years, and
this is basically the one we take. Remember that the key thing that makes this problem more
difficult than may seem at first is that we are dealing with an infinite system of linear differential
equations.
To begin, it is assumed that the initial system size at time 0 is i . That is, if N(t) denotes the number
in the system at time t , then N(0) = i . The differential-difference equations governing the system
size are
′nP (t) = −( λ + μ ) np (t) + λ 1−np p(t) + μ 1+np (t) (n > 0) ,
(1.67)
′op (t) = −λ op (t) + μ 1p (t) .
It turns out that we solve these time-dependent equations using a combination of probability
generating functions, partial differential equations, and Laplace transforms. Therefore define
P( z ,t ) = ∑∞
=0
)(n
nn ztp ( z complex) ,
such that the summation is convergent in and on the unit circle (i.e. , for |z| ≤ 1), with its Laplace
transform defined as
_P ( z, s ) = ∫
∞−
0
),( dttzPe st (Re s > 0 ).
After the generating function is formed from (1.67), yielding a partial differential equation, it is
found when the Laplace transform is taken that
_P ( z, s ) = 2
01
)()()1(zzs
spzz i
λ−μ−+μ+λ−μ−+
, (1.68)
62
where _
op (s) is the Laplace transform of op (t).
Since the Laplace transform _P (z,s) converges in the region |z| ≤ 1, Re(s) > 0, wherever the
denominator of the right-hand side of (1.68) has zeros in that region , so must the numerator. This
fact is henceforth used to evaluate _
op (s). The denominator has two zeros, since it is a quadratic in z
and they are (as functions of s)
1z = λ
λμμλμλ2
4)( 2 −++−++ ss ,
(1.69)
2z = λ
λμμλμλ2
4)( 2 −+++++ ss ,
where the square root is taken so that its real part is positive . It is clear that | 1z | < | 2z |, 1z + 2z =
(λ + μ + s)/λ, and 21zz = μ/λ. In order to complete the derivation, the following important and well-
known theorem of complex analysis due to Rouché is employed:
Rouché’s Theorem. If f(z) and g(z) are functions analytic inside and on a closed contour C and if
|g(z) | < |ƒ(z) | on C, then f(z) and f(z)+g(z) have the same number of zeros inside C.
A proof of this theorem may be found in any book on complex variables. For |z| = 1 and Re s > 0 we
see that
|ƒ(z) | ≡ | (λ + μ + s)z| = |λ + μ + s| > λ + μ ≥ |μ + λ 2z | ≡ |g(z) |;
hence, from Rouché’s theorem , (λ + μ + s)z – μ – λ 2z has only one zero in the unit circle. This zero
is obviously 1z , since | 1z | < | 2z | . Thus equating the numerator of the right-hand side of (1.68) to
zero for z = 1z gives
63
_
op (s) = )1( 1
11
zzi
−
+
μ .
When this transform for op (t) is inserted into (1.45) and the result written in infinite series form, we
find [remembering i = N(0)]
_P ( z, s ) = ∑ ∑∑
∞
=
∞
=
+
=
−⎟⎟⎠
⎞⎜⎜⎝
⎛−
+⎟⎟⎠
⎞⎜⎜⎝
⎛
0 0 212
11
201
2 )1(1
k
k
k
iki
j
jij
zz
zzz
zzzz
z λλ (|z/ 2z | < 1).
Now, the transform of np (t), _
np (s) is the coefficient of nz in the Laplace transform of the
generating function P(z,t), _P (z,s) . So the next step in the process to find
_
np (s), and then this is, in
turn, inverted to get np (t) , utilizing key properties of the transform of Bessel functions in this last
step. The final result is, in fact, in terms of modified Bessel functions of the first kind , nI (y) , and
is
⎥⎥⎦
⎤⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛−+
⎢⎢⎣
⎡⎟⎟⎠
⎞⎜⎜⎝
⎛+⎟⎟
⎠
⎞⎜⎜⎝
⎛=
∑∞
++=
−
++
−−
−
−+−
2
2/
1
2/)1(2/)()(
)2(1
)2()2()(
injj
jn
in
in
in
int
n
tI
tItIetp
λμμλ
μλ
μλ
λμμλλμ
μλμλ
(1.70)
for all n ≥ 0, where
nI (y) = ∑∞
=
+
+0
2
)!(!)2/(
k
kn
knky (n > −1),
is the infinite series for the modified Bessel function of the first kind.
As, of course, is necessary, we can show, using the properties of the Bessel functions, that (1.70)
tends to the stationary result np = (1 – ρ) nρ as t → ∞ when ρ = λ/μ < 1. When λ/μ ≥ 1, np (t) →0
for all n, so that only when λ/μ < 1 do we get a valid steady-state probability distribution.
64
1.16.3 TRANSIENT BEHAVIOR OF M/M/∞
It turns out for this model that the development of the transient solution is not too difficult a task.
To begin, let it be assumed that the initial system size at time 0 is 0, so that N(0) = 0. The
differential-difference equations governing the system size with nλ = λ and nμ = nμ as
)(tpn′ = −(λ + nμ) np (t) + λ 1−np (t) + (n + 1)μ 1+np (t) (n > 0),
(1.71)
′nP (t) = −λ op (t) + μ 1p (t) .
It turns out that we can solve these time-dependent equations using a combination of probability
generating functions and partial differential equations, without requiring Laplace transforms. It is
found that the generating function of the probabilities { np (t)} is (see, e.g., Gross and Harris [9],
1985)
P( z, t ) = ∑∞
=0
)(n
nn ztp = exp ⎟⎟
⎠
⎞⎜⎜⎝
⎛−− −
μλμ )1)(1( tez . (1.72)
To obtain the state probabilities it is necessary to expand (1.72) in a power series, oa + 1a z + 22 za
+ . . . , where the coefficients na then are the transient probabilities np (t) we desire, since we are
expanding a probability generating function. To do this we can use a Taylor series expansion about
zero (Maclaurin series) , and we find that
np (t) = n
ten ⎟⎟
⎠
⎞⎜⎜⎝
⎛− −
μλμ )1(
!1 exp ⎟⎟
⎠
⎞⎜⎜⎝
⎛−− −
μλμ )1( te (n ≥ 0) .
It is easily seen that letting t → ∞ yields the steady-state, which is equivalent to:
np = !
)/( /
nen μλμλ −
.
65
( ) =′ tPn
We remind the reader that, in general, analytical solutions for transient queueing situations are
extremely difficult to obtain. We do treat a few special cases briefly in later chapters, cases such as
M/G/1, G/M/1, M/G/∞. However, since transient solutions require solving sets of differential
equations, numerical methods can often be quite successfully employed.
1.17 BUSY- PERIOD ANALYSIS FOR M/M/1 AND M/M/c A busy period is defined to begin with the arrival of a customer to an idle channel and to end when
the channel next becomes idle. A busy cycle is the sum of a busy period and an adjacent idle period,
or equivalently, the time between two successive departures leaving an empty system, or two
successive arrivals to an empty system. Since the arrivals are assumed to follow a Poisson process,
the distribution of the idle period is exponential with mean 1/λ; hence the CDF of the busy period is
sufficient to describe the busy cycle also and is found as follows.
The CDF of the busy period is determined by considering the original M/M/1 differential equations
given in (1.67) with an absorbing barrier imposed at zero system size [i.e., 1p (0) = 1]. Then it
should be clear that op (t) will, in fact, be the required busy period CDF and op (t) the density. The
necessary equations are
′op (t) = μ 1p (t) [because of absorbing barrier] ,
′1p (t) = −( λ + μ ) 1p (t) + μ 2p (t) [because of absorbing barrier] ,
−( λ + μ ) np (t) + λ 1−np (t) + μ 1+np (t) [same as (1.67)] .
In a fashion identical to the M/M/1 transient, it can be shown that the Laplace transform of the
generating function is
_P ( z, s ) =
))(()/)(1)((
21
12
zzzzszzzz
−−−−−
λλμ , (1.73)
66
where 1z and 2z have the same values as in (1.69) . Now the Laplace transform of op (t), _
op (s), is
the first coefficient of the power series _P (z,s) and is thus found as
_P (0,s). This gives
0P (s) = λμμλμλ
μ4)([
22 −+++++ sss
.
From the properties of Laplace transforms and Bessel functions . it can then be shown that the busy
period’s density function is
′op (t) =
ttIe t )2(/ 1
)( λμλμ μλ+−
To get the average length of the busy period, E[ bpT ], we simply find the value of the negative of the
derivative of the transform of op (t), s op (s), evaluated at s = 0. But an attractive alternative way to
find the mean length of the busy period is to use the simple steady-state ratio argument that
o
o
pp−1 =
][][
idle
bp
TETE
= λ/1
][ bpTE .
Since op = 1 – λ/μ , it follows that the expected length of the busy period and busy cycle ,
respectively , are
E[ bpT ] = λμ −
1 and E[ bcT ] = λμλ −
+11 . (1.74)
Equation (1.74) holds for all M/G/1-type queues, since the exponential service property played no
role in the derivation.
It is not too difficult to extend the notion of the busy period conceptually to the multichannel case.
Recall that for one channel a busy period is defined to begin with the arrival of a customer at an idle
channel and to end when the channel next becomes idle. In an analogous fashion, let us define an
i-channel busy period for M/M/c (0 ≤ i ≤ c) to begin with an arrival at the system at an instant when
67
there are i – 1 in the system and to end at the very next point in time when the system size dips to
i – 1 . Let us say that the case where i = 1 (an arrival to an empty system) defines the system busy
period. In fashion similar to that for M/M/1, use ibT , to denote the random variable “length of the
i-channel busy period.” Then the CDF of ibT , is determined by considering the original M/M/c
differential-difference equations of (1.67) with an absorbing barrier imposed at a system size of
i – 1 and an initial size of i. Then it should be clear that 1−ip (t) will, in fact, be the required CDF,
and its derivative the density. The necessary equations are
1−′ip (t) = iμ ip (t) [because of absorbing barrier]
ip′ (t) = −(λ + iμ) ip (t) + (i+ 1)μ 1+ip (t) [because of absorbing barrier]
np′ (t) = −(λ + nμ) np (t) + λ 1−np (t) + (n + 1)μ 1+np (t) (ι < n < c)
np′ (t) = −( λ + cμ) np (t) + λ 1−np (t) + cμ 1+np (t) (n ≥ c)
Proceedings further at this point would get us bogged down in great algebric detail. Suffice it to
say that any resultant CDF would be in terms of modified Bessel functions , but with enough time
and patience, we get 1−′ip (t) , 1
_
−ip (s), and E[ ibT , ] .
1.18 ANALYSIS OF M/M/n/K QUEUES WITH PRIORITIES We outline here an approach that may be used to analyse a M/M/n/K queue (n = 1, 2, ..... and
K = n,n+1,...., ∞ ) which has job classes of multiple priorities. The priority discipline followed may
be either non-preemptive or preemptive in nature. When the priority discipline is non-preemptive in
nature, a job in service is allowed to complete its service normally even if a job of higher priority
enters the queue while its service is going on. In the preemptive case, the service to the ongoing job
will be preempted by the new arrival of higher priority. If the priority discipline is preemptive
resume, then service to the interrupted job, when it restarts, continues from the point at which the
68
service was interrupted. For the preemptive non resume case, service already provided to the
interrupted job is forgotten and its service is started again from the beginning.
Note that there may be loss of work in the preemptive non-resume priority case. Such loss of work
will not happen in the case of the other two priorities. Since the service times are assumed to be
exponentially distributed, they will satisfy the memory-less property and therefore, the results will
be the same both for the preemptive resume and preemptive non-resume cases.
For a P priority system, we consider jobs of class 1 to be the lowest priority and jobs of class P to
be the highest priority. The job arrivals for class i come from a Poisson process at rate λi. When a
job of this class gets served by any of the servers in the queue, the service time is an exponentially
distributed random variable with mean µ-1. The traffic of priority class i offered to the queue is
denoted by ρ = λ /µ.
We consider here queues with both preemptive and non-preemptive priority disciplines. The
approach suggested may be applied to both single server and multi-server queues. Moreover, queues
with both finite and infinite buffers may be analysed using the suggested approach. In this section,
we do not actually do a complete derivation of the state probabilities of a M/M/n/K queue. Instead,
we outline the way in which such a queue may actually be analysed by solving its balance
equations.
As is usual with any M/M/n/K type queue, the basic approach to its solution is to define the system-
states appropriately so that a state transition diagram of the queue may be drawn. Using the
exponential (memory-less) distribution of the inter-arrival and service times, the probability flows
in the state transition diagram is identified. The balance equations are then obtained by choosing
proper closed boundaries and equating the flow across each such boundary. These balance
equations are then solved along with normalisation condition (i.e. sum of the probabilities of all
states equal to unity) to obtain the state probabilities. Once these have been obtained, the
performance parameters of interest may be suitably calculated. In the following, we consider the
cases of preemptive and non-preemptive priorities separately. For each case, we first give the
analytical approach for the M/M/1 case and then show how it may be used to handle the M/M/1/K
queue and the M/M/n/K queue.
1.18.1 M/M/n/K QUEUE WITH PREEMPTIVE PRIORITY Preemptive queue are basic models in queueing theory and have been studied by many researchers
[8, 32, 44, 48, 86, 92]. We first consider the simple M/M/1 queue with infinite buffers. This queue
69
LLLLLL
11,022,120,12211,1
1021,110,21210,1
2022,02211,0
10,121,0210
)()()(
)(
λμλμλλλμμμλλ
λμμλλμμλλ
pppppppp
pppppp
++=++
++=++
+=++
+=+
may be analysed by drawing a state transition diagram with the states given by the P-tuple
(n1,........,nP) where ni is the number in the system of priority class i. Note that the server will always
be engaged by a job of the highest priority class present in the system, i.e. by a job of class j with
service rate µ j if nj ≥ 1 and nj+1 =........= n P = 0. The state transition diagram for a 2-priority M/M/1 queue with infinite buffers operating with a
preemptive priority discipline is shown in Fig. 1.1. Since all the flows are known, the equilibrium
probabilities of each of the states may be found by writing and solving the corresponding balance
equations with the normalisation condition. Some of the balance equations for this case are given
below as an example.
Figure1.1: State Transition Diagram for 2-Priority M/M/1 Queue with Preemptive Priority
Since the rules for transition between the states may be stated logically, we can actually use a
computer program to generate the actual balance equations. These equations may then be given to
an appropriate mathematical package to get the state probabilities. For the infinite buffer case, we
may have some computational difficulties because of the infinite number of states. If this happens to
70
10,210,3
22,023,0
10,321,210,11210,2
21,023,02212,0
20,211,121,2
12,021,122,1
11,022,120,12211,1
1021,110,21210,1
2022,02211,0
10,121,0210
)()(
)()()(
)(
λμλμ
μμλμλλλμμλλ
λλμλλμ
λμλμλλλμμμλλ
λμμλλμμλλ
pppp
ppppppp
pppppp
pppppppp
pppppp
=
=
++=++
+=++
+=
+=
++=++
++=++
+=++
+=+
10,33,01,22,10,22,01,10,11,00 =+++++++++ pppppppppp
be the case, then a convenient approximation would be to limit the state space to some large values
of the total number in the queue and solve this approximate model instead.
This would also actually be the way one can solve an M/M/n/K preemptive priority system with
finite buffers. As an example, consider the 2-priority M/M/1/3 queue with preemptive priority.
Moreover, the circled states are the ones where the system is full and any jobs arriving in these
states will be lost.
with the normalisation equation as
To solve for the state probabilities in this case, we need any nine of the ten equations of (2) and the
normalisation condition. Note that in this case, the job loss probability (or the blocking probability)
will be p1,2 + p2,1 + p3,0 + p0,3..
If the M/M/n/K preemptive multi-priority queue has more than one server, then that can be taken
into account while drawing the state transition diagram. Specifically, consider the situation where
there are nP jobs of priority class P and c servers in the system. If c ≤ nP then all the servers will be
taken by c of the nP (class P) jobs and no free servers will be available for lower priority jobs (if
any). In this case, the overall service rate will be cµP. On the other hand, if c > nP, then the nP high
priority jobs will each get a server and their overall service rate will be nPµP. The remaining (c - nP)
servers will be available for the jobs of priority class P - 1 and lower and will be used by these jobs
according to the number in these classes. This approach will allow us to define the flows between
each of the states in the state transition diagram. Note that the representation of states in the state
transition diagram may still be done as the P-tuple (n1,........,nP) where ni is the number in the system
71
of priority class i. Since the priority discipline is preemptive, we do not need to separately specify
the priority classes of the jobs engaging the servers..
1.18.2 M/M/n/K QUEUE WITH NON-PREEMPTIVE PRIORITY
The basic approach to analysing a M/M/n/K queue with a non-preemptive priority discipline would
be fairly similar to the approach suggested for the case where the priority discipline is preemptive in
nature. The state definition would need to be modified in this case in order to describe the job class
currently being served for each of the servers. This is required, as unlike the M/M/n/K queue with
preemptive priority, the ongoing service (if any) is not interrupted in the non-preemptive case
because of the arrival of a job of a higher priority class than the one currently being served at a
server (when no free servers are available).
For a M/M/c/K queue with P priority classes of jobs, a possible state descriptor would be a
(P + c)-tuple of the following form.
State Representation (n1, ......., nP, s1, ......, sc)
where nj = number of jobs of class j in the system j = 0,1,....,P
sk = priority class of the service currently on-going at server k
k =1,.....,c
Note that n1 +......+ nP ≤ K for a finite capacity system.
An alternative representation using a 2P-tuple may give a more compact representation if the
number of priority classes is less than the number of servers. In this alternative approach, the state
description will be of the following form.
State Representation (n1, ......., nP, s1, ......, sP)
where nj = number of jobs of class j in the system j = 0,1,....,P
sk = number of servers currently busy serving jobs of priority
class k, k = 1,.....,P
As an example, we consider using the first method of representation to represent the states of a
M/M/1/3 2-priority queue following a non preemptive priority discipline. The state diagram for this
queue is shown in fig.1.2.
72
11,0,211,0,3
22,2,022,3,0
12,1,111,2,1
21,0,211,1,111,1,2
12,1,122,1,2
12,2,022,1,122,2,1
11,0.322,1,211,0,11211,0,2
22,3,011,2,122,1,02212,2,0
11,1,222,2,122,1,02212,1,1
21,0,11211,1,1
22,1,111,0,2101211,0,1
22,2,0202212,1,0
11,0,122,1,0210
)(){){){)()(
)(
λμλμ
λμλλμ
λμλλμ
μμλμλλμμλμλλμμλμλλ
λμλλμμλμλλ
μλμλλμμλλ
pppp
ppppp
ppppp
pppppppppppp
pppppp
pppppp
=
=
=
+=
=
+=
++=++
++=++
++=++
=++
++=++
+=++
+=+
11,0,21,0,32,2,02,3,01,2,12,1,12,2,11,0,21,1,22,2,11,1,11,0,10 =++++++++++++ ppppppppppppp
Figure 1.2:. State Transition Diagram for a 2-Priority, Non-Preemptive M/M/1/3 Queue
For this, we can write balance equations in the same way as done earlier.
As for similar systems, we would need any twelve out of these thirteen equations along with the
normalisation condition to obtain the actual state probabilities.
Once these have been calculated, one can use them to obtain the usual queue performance
parameters. Note that, in this case, the loss probability will be given by (p0,3,2+ p3,0,1 + p1,2,2 + p2,1,2
+ p1,2,1 + p2,1,1) as the sum of the probability of all those states where the system is full, i.e. the total
number in the system is three for this M/M/1/3 queue. As for the case of the M/M/n/K queue with
73
preemptive priority classes, the approach given above for the non-preemptive M/M/1/3 queue may
also be generalised. Using the same approach, one can also analyse queues where
(a) the number of priority classes are more than two
(b) the buffer capacity is infinite
(c) the queue has more than one server.
Note that the complexity of the approach suggested here is basically because of the large number of
states in the state transition diagram and the resultant complexity in the balance equations. Since the
rules for transitions between states are straightforward, one can actually use a computer program to
identify the transitions between states and directly write the corresponding balance equations. This
set of equations, even if it is large, may be directly solved by using an appropriate numerical
package to get the actual state probabilities. These may then be used to obtain the queue
performance parameters required.