Queue Management
Queue Management
A queuing system is any system that is composed by one or more customers (of any
type, they can be products, machine or people), that are in a place that could be a
waiting room, a production department, waiting to be served by one or more
“servers”.
A queuing system is composed by one or more customers (at least one) waiting to be
served by one or more servers.
Some examples:
Customers’ examples:
o People waiting at the cashier’s desk for a bank operation
o Pieces waiting to be processed by a lathe in a job-shop
o Container waiting to be loaded on chassis
Corresponding servers:
o Cashiers
o Job-shop’s lathest
o Overhead travelling cranes’ array for the loading
So, we talk about both production companies and service companies.
Examples: vaccine centres, ER (pronto soccorso), airport, highway (casello stradale),
car assembly line.
The characteristic of different queues can be different in terms of configuration. For
instance, the vaccine queue and the assembly line are obviously completely different
in terms of configuration.
Scheme of a queue:
Whenever you have a service rate that is lower than the arrival rate (first example),
you are going to have for sure a structural imbalance: the server can’t satisfy the
demand.
Even though you try to solve the structural imbalance, so set the service rate higher
than the arrival rate, you may face incidental imbalances, that depends on the
variability (difference between the average value and the actual value) and the
uncertainty (difference between the expected value and the actual value).
Structural imbalance:
If the saturation level is too high
(arrival rate higher than service rate)
you will have issues in treat the
demand.
x-axis: saturation level of the system.
y-axis: units waiting to be processed.
In D the saturation is reached, so
every customer that will arrive have
for sure to wait. D represent the
queue, because in D we reached the
saturation.
Incidental imbalance:
We work usually based on average values, that support us to take the decisions. But
there is always a variability that need to be considered and managed.
The structural imbalance of a queueing system is due to the fact that the average
pace of customers’ arrival into the system may be greater than the average of the
server’s serving rate. Queues are a result, a symptom.
2. Arrival process: the customer arrive, with a certain pace. We will have two
activities:
- Rejecting: for several reasons (for instance there are no conformity with the
requirements), the person that arrive in the system is rejected by the system, and
he needs to go to another queue or another system.
- Balking: when there is a long queue, the customer may decides to go to another
system because of the high waiting time.
Example:
The average inter-arrival time between 2 patients to the doctor is 2.4 minutes.
Considering that a patient is just arrived, what is the probability that another
will arrive in the next 5 minutes?
So, knowing the arrival rate, we can compute the probability of having another
customer in a certain time period.
The Poisson distribution describe the number of events that can occur in a given
time t. This distribution gives the probability that n arrivals will arrive in a certain
moment during a certain interval. This probability is equal to:
Example:
At a telephone exchange phone, calls arrive at a pace of 12 calls per hour.
Knowing that the number of calls can be shaped with a Poisson distribution,
answer the following questions.
1) What is the probability that 10 calls will arrive in the next hour?
2) What is the probability that there won’t be any call in the next 5 minutes?
3) What is the probability to have more than 2 calls in the next 10 minutes?
-> = 1-0.135-0.27-0.27
4. Queue discipline: the queues are configurate, the people decide to stay in one
queue rather than another within the system. But then they see that another
queue is faster than the one that they have chosen and so decide to change
queue (JOCKEING).
We can use also for the service rate the negative exponential distribution.
Exercise:
Pierre Cahon, barman of one of the most popular discotheques of St. Catherine
Street, Montreal, serves cocktails at a pace of 1 every 50 seconds. Recently,
during an evening when the club was particularly full, every 55 seconds
someone was at the bar asking for a drink.
How to shape this system?
Relevant parameters:
With ‘q’ we are looking at the part of the system that is waiting in line, in the
queue.
With ‘s’ we are looking at the entire system, so people that are waiting in line
plus those who are made the server. So Ws, for instance, is the waiting time in
the queue + waiting time for the delivery of the service.
Example:
s=1
With the computation of the saturation level, we can understand how many
servers are needed at least to balance the arrival rate with the service rate. To
avoid a structural imbalance, we need at least 9 servers.
We want to give a certain service level to the customer: max waiting time in
queue 15 minutes.
So we compute the Wq, to understand how many servers we need to rech
Wq<15 minutes (at least 9 servers).
Wq= waiting time in the queue = saturation level / service rate – arrival rate
(da foglio formule)
With 12 servers we can reach a waiting time in queue lower than 15 minutes.
In our new system we will have 12 counters.
OSS:
So, every time, you need to balance the cost of having an additional server (or
resource), with the benefits.
6. Final step: according to what happened in the service process, the customer
may decide to repeat again the process (so return to calling population) or to not
use again the service in future because actually he was not satisfied for instance.
Cost principles:
Minimization of the sum of the wait and service cost (trade off)
Examples:
Elements of choice between the types of queues:
High service customization degree the best choice is a multiple queue
High service times variability the best choice is a single queue
QUEUE CAPACITY:
- Limited queue
The number of customers in line plus the ones that are being served is limited.
Customers who arrive, after the capacity is overfilled, are rejected.
- Unlimited queue
The number of customers in line plus the ones who are being served is potentially
unlimited.
Queue discipline
Queue discipline (or “ranking rule”) is the rule or set of rules related to the order in
which customers are served, it’s often strictly related to the queue configuration.
Type of queue discipline:
Static: the pertaining order among the customers in queue doesn’t change in time
and/or at the changing of the system conditions (ex. FCFS, SPT,…).
Dynamic: the pertaining order between the customers can change in time and/or
at the changing of the system conditions. I change the way in which I serve my
customer, because of some emergency for instance.
What are the levers that I can use to manage queues and keep stable my system?
1. Levers and countermeasures offer side.
2. Levers and countermeasures demand side.
3. Levers and countermeasures for soft aspects/related to the psychology of
waiting.
When we do the analysis of the queue systems, we might have three types of
approaches:
Deterministic analysis
Pros: simple and intuitive to apply
Cons: doesn’t take transitory into account (the scenario is static); doesn’t take
arrivals and service times variability into account; queues are seen as an on-off
aspect (they are present or they are not).
Queueing theory (approach that we’ll consider)
Pros: takes into account inter-arrivals and service times variability; allows to
compute a set of significant variables (Wq, Lq, Pn, etc…).
Cons: doesn’t take into account transitory (also in this case the scenario is static);
mathematic analysis can become very complex or even intractable in case of
complex waiting lines; non Poissonian arrivals or gaussian times (other times of
distribution are not taken into account); doesn’t consider customer complex
behaviours (balking, reneging, jockeying).
Simulation
Pros: takes transitory into account; is very flexible.
Cons: time consuming; skills needed to design, production and analysis.
The queuing theory is necessary for companies in order take better business decisions
in terms of resources.
Companies can better manage their resources and understand which is the need of
further resources in order to provide a service.
It studies the waiting times of customers/products.
EXERCISE 1.1
(M/M/c)
In the firsts morning hours customers arrive at the post office where there's a single
take a number queue, at an average pace of 54 customers/hour (Poisson) while each
server can manage to complete a service in an average time of 4 minutes (negative
exponential)
a) If there are 6 servers at the counter: what is the average number of customers
in the system, the average waiting time in line and in the system?
( Ls, Wq, Ws)
b) Determine the smallest number of counters that need to be opened to keep the
average time in the system lower than 10 minutes ( Ws<10 min)
c) If an employee costs 30€/h and customer's waiting time stands for a cost of
20€/h for customer, what would be the optimal number of servers according to
purely economic considerations?
Use the formulas in webeep pdf!
Solution:
We should minimize the sum of the cost related to the service provided and the
service delivered (every customer has an opportunity cost). We try to balance the
overall cost; everything is correlated to the number of servers that we put in the
system.
EXERCISE 1.2
(N systems M/M/1)
Solution:
Ws customer type 1 = Ws photcopier + Ws cash counter
Ws customers type 2 = Ws fax + Ws cash counter
Ws tot = 2/3 * Ws1 + 1/3 * Ws2 = 10 minutes
on average, the customer will take 10 minutes in the system.
Final considerations:
A complex system is the composition of more elemental sub-systems that
interact among themselves (mapping the system and identifying every step of
the process).
Very often in a complex system transit different type of customers (knowing in
advance every types of customers of one own system).
The system expected throughput time is a representation of an "average"
customer and not of the specific one!
The throughput time varies according to the variation of the work load in the
systems and at the variation of the input
EXERCISE 1.3
We need to use the node balancing rule:
Everything that enters in the node is equal to
everything that comes out from it. Nothing is created
or destroyed!!
Solution:
We need to
- analyse the flows of the two types of products separately.
- analyse the flows in each of the nodes.
16/03
Notes:
Question 2:
Note: the alteration of the priority logic doesn't never change the system expected
throughput time (Ws); however, in some cases it's essential to increase the
customer's satisfaction degree and to improve customer service.
EXERCISE 2.2
Frame to solve the problem:
To compute the lambda we have to evaluate whether we have different type of
products in each system (in ophthalmology for instance we have special and normal
kits).
Now, since we have to compute the throughput time, we need to analyse the types of
customers. In this case we are going to meet 12 different typologies of customers:
We need to map our system, to observe in which stages every product will go and
then we can compute the frequency of occurrence for each category. This are all the
paths that we can have in the system:
Frequency computation for each type of product:
Now we can compute the different Ws of the different categories of customer (lead
time or throughput time).
(Lq computed with the table, with interpolation; at the exam isn’t necessary
interpolation)
-General surgery:
-Gynaecology:
-OSS:
In the preparing phase we have two systems, each having its own queue; the arrival
rate is the overall rate divided by two, because each system is going to see one single
queue. Lambda = 15/2.
By summing the different Ws in each stage (for instance nurse, ortop. and OSS) and
multiplying for the occurrences we obtain the weighted time.
The sum of the values in the last column gives the total Ws.
EXERCISE 2.3
Note: “not considering scraps paths” or “consider all the customers that enter all the
stages” are the same thing (useful for the exam).
Using different priorities, the overall throughput time of the system will be the same.
Resuming the information that we have, now we can compute the Ws (or LT, lead
time):
Now we have to map our system because we are going to have different types of
customers.
We have 7 different types.
The text asked to look at those paths that are not discarded but that exit the system.
So, we will not consider the paths A1, A6 and A7.
Anyway, we need to compute the occurrences of all the path to have information
about the 4 occurrences once eliminated the others.
-A1 occurrence:
Note: the occurrence computation of a certain population refers to the input, so we
need to divide by the input of the system.
Adjusted occurrences:
Throughput time
EXERCISE 3.1 23/03
NOTE for all the exercises:
Steps for the computation of Ws (throughput time) of the system:
1. Calculate the Ws of each stage
2. Understand the different paths
3. Calculate the occurrences
4. Calculate the Ws of the system
SOL:
INPUT A:
Nota: l’analisi dei nodi solitamente parte dal nodo più lontano fino a quello più vicino!!
(credo)
Nodes must be individuated in the best option you think.
INPUT B:
Node balancing:
B)
- In B1, B3 and B4 paths the pieces haven’t to be reworked by finishing and drilling
machines. The total amount of these pieces is 0,8*XB. 0,8*XB is distributed
among good pieces at first test, good pieces at 2°test and scraps at second test.
The quantities of pieces that enter in the testing phase are 0,8*XB that arrives
directly from work center and 0,15*XB is reworked by traditional machines This
proportion is kept also for the pieces processed by the testing machine and the pieces
that have to be tested again.
0,8/(0,8+0,15) = 0,8/0,95 not-reworked
0,15/(0,8+0,15) = 0,15/0,95 reworked
- In B5, B6 and B7 paths the pieces have to be reworked by finishing and drilling
machines.
The total amount of these pieces is 0,15*XB. 0,15*XB is distributed among good
pieces at first test, good pieces at 2°test and scraps at second test
Ws mechanical process: