THE GEOMETRIC DISTRIBUTION OF QUEUE LENGTH

UNDER A PREEMPTIVE-RESUME

LAST-COME-FIRST-SERVED

DISCIPLINE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

APPROVED:

_________________________________

_________________________________


 

 

 

 

 

 

 

 

 

Copyright

by

Robert Graham Landrum

1993


 

 

 

 

DEDICATION

 

This report is dedicated to my parents and the memory of Robert Todd Lapsley Liston and of Charles Adair Bledsoe. These have been the architects of my education.


THE GEOMETRIC DISTRIBUTION OF QUEUE LENGTH

UNDER A PREEMPTIVE-RESUME

LAST-COME-FIRST-SERVED

DISCIPLINE

 

by

 

ROBERT GRAHAM LANDRUM, B.S.

 

 

 

REPORT

Presented to the Faculty of the Graduate School of

The University of Texas at Austin

in Partial Fulfillment

of the Requirements

for the Degree of

MASTER OF ARTS

 

 

THE UNIVERSITY OF TEXAS AT AUSTIN

 

 

MAY 1993


 

 

 

ACKNOWLEDGEMENTS

 

 

The author would like to acknowledge the direction of Dr. David Fonken in the preparation of this report and the generousity of Dr. Klaus Bichteler in giving his time to this project. Dr. Georgia-Ann Klutke's contribution in reading this work is also appreciated.

 

 

 

 

 

 

 

 

 

 

 

                                                                                             – April 19, 1993


 


 

Table of Contents

Chapter One:  Introduction and Explanation of Notation..................................... 1

Chapter Two: The Queue Length in G/M/m Systems.......................................... 5

Chapter Three: M/G/1 (LCFS/I) Systems.......................................................... 12

Chapter Four: G/G/1 (LCFS/I) Systems............................................................ 20

Chapter Five: Conclusion.................................................................................. 29

Bibliography...................................................................................................... 31

 


Chapter One:  Introduction and Explanation of Notation

A classic example of a queue is a group of patrons lined up to purchase concert tickets. The two parts of a queueing system consist of a serving facility (e.g. the ticket booth) and a queueing facility (e.g. the line of concert goers). In general the queueing facility may consist of a number of queues as in a supermarket's checkout lines; like­wise the serving facility may have a number of servers. In this report models with one queue and mostly one server will be considered.

This kind of arrangement is often encountered; however there are other schemes that approximate other situations and have the advantage of easier calculation of rele­vant quantities. Once these calculations have been made, they may be transferred to a "normal" queue through a mathematical transformation. The difference in the models is in the queue discipline, which will be discussed presently.

The notation set out here is based on that of  Leonard Kleinrock.[1] The nth cus­tomer, designated by Cn where n 0, enters the system at tn . For cal­culation purposes t0 = 0. The waiting time wn is the time spent by Cn in the queue while xn is the associ­ated service time; furthermore the total system time for Cn is calculated as sn =  wn + xn. The difference tn = tn - tn-1 is the interarrival time between Cn-1 and   Cn. For most purposes the tn's and the xn's are considered to be independent. Now we may define

 

qn        =    the number of customers in the system just after Cn departs.[2]

q'n              =    the number of customers in the system just before Cn ar­rives.[3]

 

For each n the random variables tn and xn are the associated with the distribution func­tions An(t) and Bn(x) , and these values are the basis for the probabilistic nature of the setup. The related probability density functions (pdf's) are an(t) and bn(x) respec­tively.

If a sequence of random variables converges (in probability) as n , then the corre­spond­ing limiting variable is denoted with a tilde: . Limiting distribution functions and their pdf's are written without a subscript e. g. A(t) and a(t).

The following variables may now be defined for the number of customers in the system:

pk     =       [4]

dk     =     Pr()

rk     =     Pr()  [5]

For and  set . Define the utilization factor where m is the number of servers. Since it is the ratio of the average arrival rate to the average service rate for the system, 0 r 1 in order  for an equilibrium state to oc­cur; otherwise the servers will not be able to handle incoming customers fast enough.

The Laplace transform of the variable's pdf will be represented as

                                                                         (1.1)

where H(y) = Pr(Y y) is a distribution function.[6] Similarly the z-transform – also called the generating function – for a discrete random variable is

                                               .                                 (1.2)

Here hn = Pr(Y = n).[7]

In order to be classified succinctly, queues are designated with the form A/B/m where A and B stand for the distributions of the interarrival and service times respec­tively and m is the number of servers in the service facility. The distributions are de­noted as follows:

G: General

M: (for Markov process) Exponential 

Er: r-stage Erlangian

HR: R-stage hyperexponential

D: Deterministic

 

A M/HR/2 queue, for example, has exponentially distributed interarrival times, services with an R-stage hyperexponential distribution, and employs two servers.[8]

How a customer progresses through the system is described by the queue disci­pline. The most common process is the first-come-first-served (FCFS) discipline where the next customer to be served is the one that has been in the queue the longest. This is like the concert goers buying tickets. An alter­nate scheme is called the last-come-first-served (LCFS) discipline. Here the next customer for service is the  latest. (This is re­ally a stack but  will be called a queue.)

In this report the last-come-first-served queue discipline with preemptive resume will be explored usually for queues with one server. Its designation will be LCFS/I where the "I" stands for "interrupt." Upon the arrival of a cus­tomer into such a system, the customer in service leaves the server immediately and enters the queue; the new customer takes up the position with the server. If the cus­tomer with the server com­pletes his service, he leaves the system, and the last customer to have entered the queue returns to the server. This will be the customer who was in service when the now de­parting one arrived.[9]

This report proceeds with a discussion of the intrinsic geometric nature of G/M/m queues. M/G/1 (LCFS/I) models are then explored through an intuitive interpretation of  Beneš's inversion of the Polleczek-Khinchin Transform Equation. The last topic is G/G/1 (LCFS/I) systems with an expansion of the techniques used for the M/G/1 ar­rangement.


 

 

Chapter Two: The Queue Length in G/M/m Systems

In this chapter we will discuss the geometric distribution of queue length under an arbi­trary queueing discipline, but the service time will be assumed to be exponentially distrib­uted.

The mathematical basis for this analysis is the semi-Markov chain. Let Xn be a random variable that is paired with a time Tn where Ti < Tj for i < j. The sequence {Xn,Tn} is then a semi-Markov chain[10] if

                                          (2.1)

 

Setting  t to leaves

                                                          (2.2)

 

To be as general as possible, it will be assumed that there are m servers.  The de­velopment follows that of Kleinrock.[11]

The random variables of the sequence q'n} form a semi-Markov chain, and the rela­tionship between successive pairs is easily established:

 

                                           q'n+1 = q'n + 1 - v'n+1            (n 0).                                                           (2.3)

 

Here v'n+1 is the number of customers who finish being served and leave between the arrivals of Cn and Cn+1 . The transition probabilities are designated

 

                                                   pij =   Pr(q'n+1 = j | q'n = i)                                     (2.4)

or equivalently

                             pij = Pr(i + 1 - j  customers leave during tn+1 | q'n = i).                (2.5)

 

With the v'n's being nonnegative, it follows immediately that

 

                                                   pij = 0     for    j > i + 1.                                     (2.6)           

We will concentrate on the situation where i m. Since the service time is expo­nentially distributed,

                                                                    

                     .       (2.7)

 

Now pij may be calculated for  m j i + 1:

                                          (2.8)

 

In this last equation the dependence on i and j is in the form i + 1 - j. Define n = i + 1 j, and set

 

                       .          (2.9)

 

bn is the probability that n customers finish service in an interarrival time given that all m servers are occupied. Let Ek be the event that there are k customers in the system, and define

 

ci(j)     =    the number of times that the state Ej is reached between suc­cessive visits to Ei.

sk       =    E( ck(k + 1) )                                    (k m – 1)

g         =    Pr( ck+ 1 (j) = 0,  j   k)                      (k m – 1)

           =    Pr( ck+ 1 (k) = 0)

Nk(t)   =    the number of times in (0, t) that an arriving customer finds the system in state Ek when the system starts at t = 0 with 0 customers.       

 

Note that g is the same regardless of the value of k. In order to see this, suppose that a sequence of transitions between states results in ck + 1(k) = 0 where k m – 1. Every such sequence can be matched one-to-one with a parallel sequence having the same relative transitions but starting with k + 2 customers in the initial system; further­more this parallel sequence satisfies ck + 2(k + 1) = 0 and has the same probability as the first. It is apparent that

 

                            Pr( ck+ 1 (k) = 0) = Pr( ck+ 2(k + 1) = 0)          k m – 1.             (2.10)

 

The variable sk may be thought of as the ratio of the times that the system is in state Ek + 1 to the times it is in state Ek. It follows that

                                                .                                (2.11)

If a(t) is the number of customers that have entered the system in (0, t), then

                                                     ;                                     (2.12)

consequently

                                          .                           (2.13)

 

From Equation 2.1 it is apparent that if a system goes from a state Ek to Ek' (< k'), it can only do so by rising through successive states; thus if a system in state Ek loses customers before a new customer can arrive, it must pass through Ek before reaching Ek + 1. In such a case ck(k + 1) = 0. This indicates that

 

                                                    Pr(ck(k + 1) > 0) = b0.                                     (2.14)

 

We may now calculate

 

          Pr(ck(k + 1) = n)  =   Pr(ck(k + 1) > 0)   [Pr(ck + 1(k) = 0)]n – 1 Pr(ck + 1(k) > 0)

                                      =  b0gn – 1(1 – g),                                                              (2.15)

and

                                                                          (2.16)

which reduces to

                                                .                                (2.17)

 

Since the right side of this equation does not depend on k, we may drop the subscript:      for  k m – 1.                                                                (2.18)                                                                     

From Equation 2.10

                                                    rk+ 1 = srk     k m – 1                                     (2.19)

or

                                                   rk + 1 = Ksk     k m – 1.                                   (2.20)

 

Here is the geometric relation, but now we need to find K and s. With rk being an equilibrium probability, the vector r = (r0, r1, r2, r3, . . .) is a solution of the equation rP where P = (pij). Explicitly, when all servers are known to be busy,

                                                                                 (2.21)

 

Solving for s, we get

                                                      ,                                      (2.22)

which is equivalent to

                                                                        (2.23)

 

By solving the last equation for a value in (0, 1), s may be determined. K  then follows from the fact that .

 

Theorem: The length of the queue proper given that an arriving customer finds all servers busy is geometrically distributed.

 

Proof. Let Q be the event that an incoming customer must enter the queue; then

                                                                                                (2.24)

and

 

                                                                (2.25)

This is the desired result.

 

Theorem: The number of customers in a G/M/1 system is geometrically distributed.

 

Proof:

                                                                                                      (2.26)

 

which may be solved to yield

 

                                                            K  = 1 – s.                                             (2.27)

 

The intended result  rk = (1 – s)sk easily follows.

 

The geometric nature of these systems comes from the circumstance of  b0 , g, and thus sk being independent of k. As was shown earlier, g was developed without appealing to the underlying probability distributions. On the other hand, the independ­ence of  b0 from k was evidenced in Equation 2.8 which was derived from the Poisson distribution of  departing customers: the exponential service times are central to this ar­gument although there is no need for a special queueing dis­cipline.


 

 

Chapter Three: M/G/1 (LCFS/I) Systems

Although the material in this chapter is less general than that in the next chapter, it provides an insight into what is actually occurring with the LCFS/I discipline.

The value of the exponential distribution is that it is memoryless – that is Pr(s+t |s) = Pr(> t).[12] In the G/M/m case this meant that only the time be­tween arrivals was needed to calculate the number of departures for that period: the time between the last departure and first arrival could be "forgotten." For M/G/1 sys­tems the situation is reversed: since the arrivals are exponentially distributed, the semi-Markov chain is established on the sequence {qn} of departure times.

 

3.1. Beneš's Inversion of the Pollaczek-Khinchin Formula for Waiting Time

 

For this section we need three distribution functions:

 

                                                        Q(t) = Pr()

                                                         S(t) = Pr()

                                                        W(t) = Pr()

 

 Q#(z) can be obtained from the Pollaczek-Khinchin Transform Equation:

                                       .[13]                          (3.1)

 

Another form of this generating function may be calculated using the FCFS dis­cipline. In this case all the qn customers in the system when Cn leaves arrive during Cn's system time. Since interarrival times are exponentially distributed, qn has a Poisson distribution:

 

                                            .                               (3.2)

 

Integrating with respect to s and taking the limit as , we get

                                              .                                 (3.3)

 

Now we calculate[14]

                                                                         (3.4)

                                                                    

Setting s = l - lz and combining Equations 3.1 and 3.4, we get

                                           .                              (3.5)

 

The equation  leads to

 

                                                      S*(s) = W*(s)B*(s),                                        (3.6)

 

which may be used to get

                                                                           (3.7)

 

The residual life distribution for the service time is

                                                    ,                                      (