Sunteți pe pagina 1din 10

ISyE 3232C

YL. Chang

Stochastic Manufacturing and Service Systems

Fall 2015

Queueing Theory
This chapter will provide you some background information for the book The Goal. Queueing theory
deals with systems having waiting spaces. We start with a simple queue and then we will look at a set of
queues connected with each other. We will revisit the queueing theory once we have more advanced modeling
techniques and knowledge.
Examples of Service Systems:
Student Center
Restaurants
Call center, automated answering machines
Post offices, ...
These service systems (or manufacturing system) can be generalized as a set of buffers and servers. The
number of servers can vary from one to many to infinity. The size of buffer (waiting space) can also be either
finite or infinite. By infinite buffer, it means that space is so spacious that it is as if the limit does not exits.
Define a queueing system
# of servers (capacity)
processing times (service time): It can be deterministic or random. How fast can your system serve
customers?
inter-arrival times: How frequently customers arrive? It can be deterministic or random. (Demand)
# of waiting space
Standard Notation (Kendalls)
Interarrival Times/Service Times/# of Servers/ # of waiting space
G: General Distribution
M : Exponential Distribution (M: memoryless property)
D: Deterministic (constant)
The fourth number can be omitted if the capacity is infinite which means your system can contain any
number of customers.
e.g.
(1) G/G/1/:
(2) M/M/1/:
(3) G/D/2/2:
(4) G/G/:
(5) Consider G/M/2/3: What is the maximal # of customers in the queue? What is the maximal # of
customers in the system? 3,5

Key Performance measures of a queue


Average waiting time for a customer (i.e. waiting time in queue excluding service time)
Average number of customers in the queue or in the system.
Above are two kinds of average. The first one is average over people. It is average waiting time per customer.
The second one is average over time. It is the average number of customers in the system or in the queue.
You should be able to distinguish these two.
Example:
Assume that the system is empty at t = 0. Assume that
u1 = 1, u2 = 3, u3 = 2, u4 = 3,
v1 = 4, v2 = 2, v3 = 1, v4 = 2
(ui is ith customers inter-arrival time and vi is ith customers service time.)
(1) What is the average number of customers in the system during the first 10 minutes?

Figure 1 shows the number of people in the system at time t with respect to t.
Z 10
1
1
E[Z(t)]t[0,10] =
Z(t)dt =
(10) = 1.
10 0
10
(2) What is the average queue size during the first 10 minutes?

E[Q(t)]t[0,10] =

1
10

10

Q(t)dt =
0

1
2 = 0.2
10

(3) What is the average waiting time per customer for the first 4 customers?
We first need to compute waiting times for each of 4 customers. Since the first customer does not wait,
w1 = 0. Since the second customer arrives at time 4, while the first customers service ends at time 5.
So, the second customer has to wait 1 minute, w2 = 1. Using the similar logic, w3 = 1, w4 = 0.
E[W ] =

1.1

0+1+1+0
= 0.5 minute
4

Random Variables in a Queueing System

For this system, we need two sequences of random variables.


{ui : i = 1, 2, ...} inter-arrival times
{vi : i = 1, 2, ...} service times
These two sequences are the input for the queueing system.
Assume that {ui : i = 1, 2, ...} is a sequence of i.i.d. (independent and identically distributed) random
variables having distribution
Fa (x) = P (u1 x) = P (u2 x) = P (u3 x) = ... = P (ui x) = ...
(The subscript a signifies arrival.) The equalities in the above equation hold because of the i.i.d. condition.
i.i.d. means
(i) How long it took for the previous customers to arrive does not affect the time it takes for the next
customer to arrive;
(ii) How long it takes for each customer to arrive follows the exactly same distribution.
Also, assume that {vi : i = 1, 2, ...} is a sequence of i.i.d. random variables having CDF Fs (x) where the
subscript s signifies service.
For example, if you have vi for each day as follows,
Monday v1 , v2 , ... = 1, 2, 3, 3, 5, 2, 2, 2, 0, ...
Tuesday v1 , v2 , ... = 5, 0, 4, 2, 10, 2, 3, ...
without some commonality for the input, our model is quite useless. That is why we need i.i.d. assumption
so that we can assume that each different realizations actually come from the same distribution.

1.2

Rate vs Mean time


E[ui ] = mean inter-arrival time = 2min
E[vi ] = mean service time = 4min.

Arrival Rate = # of arrivals per time unit =

1
E[ui ]

Service Rate = # of services completed per time unit =

1
E[vi ]

1.3

Stability and Traffic intensity

Suppose there are 30 customers coming to post office in an hour, and the clerks can only handle 20 customers
in an hour. What do you think of this system?
System is not stable. By stable, it means that the queue size should not go to infinity. Intuitively, this
queueing system will not last because average arrival rate is greater than the average service rate so the
system will soon explode.
Suppose mean of inter-arrival times is 2 minutes and the mean of service times is 3 minutes. What do you
think of this system?
System is not stable. The logic is simply comparing the average inter-arrival time and the average service
time.
Definition 1. Stable System: A queueing system is said to be unstable if the number of waiting customers
for the system diverges to infinity. A queueing system is said to be stable if it is not unstable.
Definition 2. Traffic Intensity: The traffic intensity is the ratio of arrival rate () to service rate ()
in the queueing system, = . Traffic intensity measures the stability of a queueing system.
Properties of Traffic intensity :
< 1, stable.
= 1, unstable unless both service times and inter-arrival times are deterministic.
> 1, unstable.
Definition 3. Utilization of a server/system u: The fraction of time that a server/system is busy.
Relationship between Traffic Intensity and Utilization u:
(
if < 1
u=
1 if 1
= min(1, )
Utilization can also be interpreted as the long-run fraction of time the server is utilized.
Traffic intensity is NOT utilization. Utilization seems to be more intuitive and user-friendly name.
In fact, utilization just happens to be same as if < 1. However, the problem arises if > 1 because
utilization cannot go over 100%. Utilization is bounded above by 1. Traffic intensity is regarded as a more
general notation to compare arrival and service rates.
Example:
1. Assume arrival rate = 40 customers/hour, and service rate = 50 customers/hour. What is the
utilization? What if = 60 customers/hour and = 50 customers/hour?

=
=

= 0.8, u = 80%

= 60/50 = 1.2 > 1, u = 100%.

1.4

Fluctuation Effect

Variance can play an important role in the average waiting time.


Theorem 1. Kingman heavy-traffic approximation formula for long-run average waiting time
Wq in the queue.
Assume < 1 and is close to 1,
E[Wq ] E[V ](

C 2 + Cs2
)( a
),
1
2

where V is service time, and Ca2 , Cs2 are coefficient of variation of inter-arrival times and service time,
respectively.
V ar(V )
V ar(U ) 2
, Cs =
.
Ca2 =
2
(E[U ])
(E[V ])2
Examples:
1. For any exponential random variable, show CV 2 = 1.
Definition: A random variable X is said to be exponentially distributed with rate (with mean 1/)
if it has pdf
(
ex x 0
f (x) =
0
otherwise
Properties:
E[X] = 1/
Proof.

Z
E[X] =
0

xe
Z
0

dx =

xde

[xex |
0

ex dx]

1
1
ex d(x) = ex |
0 =

(1)

V ar[X] = 1/2
Proof.
E[X 2 ] =

x2 ex dx =

x2 dex = [x2 ex |
0 2

2
xe
dx = 2 by (1)

0
2
1
1
V ar[x] = E[X 2 ] (E[X])2 = 2 2 = 2

2
=

CV [X] = 1
Proof.
CV [X] =

V ar[X]
1/2
=
= 1.
2
(E[X])
1/2

ex xdx]

2. Suppose inter-arrival time follows an exponential distribution with mean of 3 minutes and service time
follows an exponential distribution with mean of 2 minutes. What is the expected waiting time per
customer?
Clearly, U exp(1/3), = 1/3, V exp(1/2), = 1/2
1/E[U ]
1/3
=
= 2/3
1/E[V ]
1/2

C 2 + Cs2
E[Wq ] = E[V ](
)( a
)
1
2
2/3
12 + 1 2
= 2(
)(
) = 4 minutes
1 2/3
2
=

3. Suppose interval-arrival time is constant 3 minutes and service time is also constant 2 minutes. What
is the expected waiting time per customer?
E[Wq ] = 2(

02 + 0 2
2/3
)(
) = 0 minute.
1 2/3
2

4. You are running a highway collecting money at the entering toll gate. You reduced the utilization level
of the highway from 90% to 80% by adopting car pool lane. How much does the average waiting time
in front of the toll gate decrease?
C 2 +C 2

1
E[V ]( 1
)( a 2 s )
E[W1 ]
1
=
=
C 2 +C 2
2
E[W2 ]
)( a 2 s )
E[V ]( 1
2

0.8
10.8
0.9
10.9

= 4/9

The average waiting time in front of the toll gate is reduced by more than a half.

1.5

Litters Law

Theorem 2. Let be the rate into a black box, W be the average time spent in the black box per customer,
and L be the average number of customers in the black box, then
L = W.
For example,
Lsys = sys Wsys
# of customers in the system = arrival rate to the system average waiting time in the sytem
Lq = q Wq
# of customers in the queue = arrival rate to the queue average waiting time in the queue
Lsvc = svc Wsvc
# of customers in service = arrival rate to the server average waiting time in service
Lsys = Lq + Lsvc
Wsys = Wq + Wsvc

Examples:
1. Atlanta is the place where two interstate highways, I-75 and I-85, merge and cross each other. As a
traffic manager of Atlanta, you would like to estimate the average time it takes to drive from the north
confluence point to the south confluence point. On average, 100 cars per minute enter the merged area
from I-75 and 200 cars per minute enter the same area from I-85. You also dispatched a chopper to
take an aerial snapshot of the merged area and counted how many cars are in the area. It turned out
that on average 3000 cars are within the merged area. What is the average time between entering and
exiting the area per vehicle?
Larea = Warea
3000 cars = (100 + 200) cars/minWarea
Warea = 10 minutes
2. Georgia Tech has 21000 undergrad students and every year there are about 5000 incoming students.
Lets assume that there are no other incoming students, and no dropping out students. How long does
it take to graduate on average?
21000 students = 5000 students/year W
W = 4.2 years

1.6

Throughput and Bottleneck in Production

Definition 4. Throughput (TH) is the rate of output flow from a system.


(e.g. Production level of manufacturing line.)
1.6.1

One Server

= /
(
if 1
Throughput =
if > 1
1.6.2

Or Throughput = min(, ).

Two servers in parallel

= /(1 + 2 )
(
if 1
Throughput =
1 + 2 if > 1

Or Throughput = min(, 1 + 2 ).

1.6.3

Two servers in sequence (Tandem Queue)

= / min(1 , 2 )
(
if 1
Throughput =
min(1 , 2 ) if > 1
1.6.4

Or Throughput = min(, min(1 , 2 )) = min(, 1 , 2 ).

n servers in sequence (Tandem Queue)

= / min(1 , 2 , ...n )
(
if 1
Throughput =
min(1 , 2 , ..., n ) if > 1

Or Throughput = min(, min(1 , 2 , ..., n )) = min(, 1 , 2 , ..., n ).

Example (Tandem queue with two stations). Suppose your factory production line has two stations
linked in series. Every raw material coming into your line should be processed by Station A first. Once it
is processed by Station A, it goes to Station B for finishing. Suppose raw material is coming into your line
at 15 units per minute. Station A can process 20 units per minute and Station B can process 25 units per
minute.
(1) What is the throughput of the entire system?
A =

15
= 0.75
=
A
20

Since A < 1, the throughput of Station A is = 15 units per minute. Since Station A and Station B
are linked in series, the throughput of Station A becomes the arrival rate for Station B.
B =

15
=
= 0.6
B
25

Also, B < 1, the throughput of Station B is = 15 units per minute. Since Station B is the final stage
of the entire system, the throughput of the entire system is also = 15 units per minute.
(2) If we double the arrival rate of raw material from 15 to 30 units per minute, what is the throughput of
the whole system?
A =

30
=
= 1.5
A
20

Since A > 1, the throughput of Station A is A = 20 units per minute, which in turn becomes the
arrival rate for Station B.
A
20
B =
=
= 0.8
B
25
B < 1, so the throughput of Station B is A = 20 units per minute, which in turn is the throughput of
the whole system.

We observe
Most slowest server screws up the system.
Most slowest server is most busy server.

)(
Kingmans equation. E[Wq ] = E[V ]( 1

Ca2 +Cs2
), E[Wq ]
2

as 1.

Bottleneck station.

1.7

The Goal and Littlefield Game

You are a manager in a plant.


Identifying the bottleneck by observing utilization.
Smoothing the bottleneck by making the structure paralle. (Borrow money and get some machines if
necessary)
Smoothing the bottleneck by refusing some orders if necessary.
Preventing the bottleneck by constantly observing utilization trend.
Lead time and revenue management.
It is all about nice and smooth flow.
1.7.1

The Wisdom of Jonah

The most important part of this book is how to manage bottlenecks. First of all, identifying bottlenecks
then managing bottlenecks. Three quantities mentioned in the book.
(i) Throughput: the rate at which the system generates money through sales. If you produce something
but do not sell it, it is not throughput.
(ii) Inventory: All the money that the system has invested in purchasing things
(iii) Operational expense.
Most important part of this book is capacity management.
(i) Identify the system bottlenecks (constraints)
(ii) Increase effective capacity of the system bottlenecks.
(iii) Adjust product mix, if appropriate.
If you are selling vehicles: cars and trucks, you could sell half and half or 70:30. The thing is that if you
change your product mix, the bottleneck may shift because each product requires different resources.
(iv) Subordinate everything else to the bottlenecks (for example, drum & ropes). Team has to march
together.
(v) If, in a previous step, a bottleneck constraint has been broken, return to step (i).
There is always a bottleneck. If you dont know, you may be the one!
Then, how to increase effective capacity of bottlenecks?
(i) Never let the bottleneck be idle.
(a) Never lack an operator, change lunch and break schedule, etc.
(b) Maintain a buffer inventory in front of the bottleneck so that it is never starved.

(ii) Squeeze as much output as you can from the bottleneck.


(a) Use your best workers at the bottleneck.
(b) Reduce bottleneck setup time.
(c) Split and overlap batches to increase throughput.

10

S-ar putea să vă placă și