Andrew M. Heller Professor at the Wharton School, Senior Fellow Leonard Davis Institute for Health Economics Co-Director, Mack Institute of Innovation Management The Wharton School
In the module of Customer Choice and Product Variety, we already introduced one
tool that helps us tame the evil forces of variability.
We introduced the concept of pooling. The purpose of this session is to help you
think about pooling benefits in the context of waiting time problems.
We will use our waiting time formula to estimate savings in terms of waiting times
that you can achieve, by introducing pooling to your service.
We will talk about some practical examples, and explore the main benefits
and costs that are associated with pooling in waiting time problems.
Consider the following two process layouts.
In the first example, option number one, I have two waiting lines for two doctors or
for two servers. People that come to this server have to be
served by this server. And people who come to the other server
have to be served by the other server. Contrast this with the example of a pooled
service. In the pooled service, no matter from
where you come in, you're going to get served by whoever is available next.
Which one will have the shorter waiting times.
Most of us I think have an intuition that this process here will have a better
waiting time. I would argue the intuition behind it,
goes something like follows. In the example up here, you might end up
in a situation where we have a lot of people waiting in the upper case, and you
have a doctor idle here in the lower case. As a result of that, that cannot be
efficient, and that's what this pooling addresses in this system down here.
Now, let's understand how this relates to our waiting time formula.
First and foremost, let's see how it influences utilization.
Recall that utilization is P divided by a times m.
You know, example here, we have, again, customers come in every four minutes, and
the inter-arrival time is five minutes, with m equals one, we simply get four
divided five equals to 80%. Now, how does it look down here if I pool
two such systems? I have no impact on the processing time,
however, I have now a shorter inter-arrival time.
I here had twelve customers arrive per hour.
If I pool, I have to have 24 customers per hour showing up.
So, pooling at least two similar systems, I move from twelve to 24 customers per
hour. Meaning an enter arrival time from five
minutes to 2.5. And notice often times students get
confused on this point. A shorter enter arrival time means more
demand. Finally, I have an m2, equals two, m2,
equaks two, p4, equals four, a2.5. Equaks 2.5, if I plot this into the
formula, p divided by a times m. I'm going to get a utilization of four
divided by two times 2.5 and voila, it's the same 80% as I had before.
So, pulling in it by itself, actually does not change the utilization but it will
impact the waiting time. Let's try this out on our Excel
spreadsheet. I'm using the same Excel spreadsheet that
I used in the last session, where you have P, as the processing time, inter-arrival
time, number of servers, CVas CVps, the utilization as defined by P divided by a
times m, and finally, the actual waiting time.
Alright, now let's take a look. Processing time stays unchanged.
Inter-arrival times, if I basically pool two similar servers with the same demand
wait together, I cut the inter-arrival time in half.
However, the server capacity doubles because I'm moving from m equals one to m
equals two. And everything else is a matter of
calculation. Notice as we saw on my calculations on the
previous slides, the utilization does not change, yet the time in the queue does.
The average time in the queue goes down from sixteen minutes to 7.2 minutes.
This is the power of pooling applied in queing.
Let me point out though that when you pool, you don't necessarily have to assume
that the inter-arrival times are going to be exactly identical, and so that the new
inter-arrival times are simply cut in half, or generally, the way that you're
going to figure out new enter arrival times is by just adding up the demand
rates and then dividing 60 minutes by the new demand rate in customers per hour and
that gives you the new enter arrival time. Early on this session, I discussed how the
utilization drives up the waiting time. We notice that as the utilization
approaches 100%,, the waiting time really goes through the roof.
I've taken the waiting time formula and I plug it in Excel and then I've entered
various level of utilization. So, this is the more exact graph that I
should have showed you early on the previous slide.
Now, what you notice here is that, as you're increasing the utilization,
Indeed, the waiting time goes up very steeply.
However, you notice that while for an m equals one already an 80% utilization is
quite a steep increase for every additional unit of utilization added.
At an m equals ten you can safely keep on adding.
Additional units of utilization. So, this is really the effect of pooling
at work. Pooled systems are much more able to be
loaded to very high volume without really experiencing a steep increase in the
waiting time. One nice way of illustrating this is
thinking about the tradeoff here when designing the service.
We have to balance the forces of responsiveness and efficiency.
Now, responsiveness means the service is responsive, as the time in the queue is
short. High time in the queue,
We would say the service is not responsive.
Efficiency we can proxy by utilization. High utilization is typically a more
efficient process than a low utilization. As we have seen previously by changing the
staffing plan by any more workers, I can move from to the lower right to the upper
left. So, a change in staffing extra m, number
of workers, will increase the responsiveness, but it comes at the
expense of the efficiency. Now, notice that when we pool the system
however, we keep the utilization constant and we're moving to a new frontier.
Now, oftentimes I get asked, what is a good utilization to have for service?
My usual academic answer is well, it depends.
If you run a fire truck, I'm not sure that you're comfortable running it at a 50%
utilization. The response time is simply too long,
given the urgency of the fire. On the other hand, if you're running the
local cable company and you're the only game in town, well, you can afford to run
a 99% utilization, have customers wait for three months for their cable TV but
there's really no threat of substitution. So, you notice again where you position
yourself on this line, there's no right or wrong.
That's a choice of strategy. Choose between being the fire truck.
It is up here, while the local cable company that us is down here.
Clever system design however, shifts the frontier and benefits you either way.
If pooling is really that great, why don't we pool everything?
Consider a company that is operating call centers in Germany, France, and Spain.
How about pooling? Well, the problem is that the Spanish
customer service representatives might have a hard time dealing with these German
customers. So, in other words, pooling really assumes
a form of flexibility that every resource is able to serve every customer.
That is a very strong assumption. Second, pooling also complicates the
workflow. The most prominent applications of pooling
have been with help desks and call centers.
Here we're dealing with digital workflows. Since transportation is cheap in the
digital world, pooling around the globe is very simple.
However, you obviously do not want to pool the primary care capacity of a healthcare
operation that has facilities in Philadelphia and Pittsburgh, it's a little
too far to drive five hours to see your primary care physician.
This gets to another disadvantage of pooling.
Pooling really interrupt a continuity of interaction between the flow unit, the
customer, and the resource. Do you really wanna be seen by different
doctor every time or talk to different agent in your bank every time that you
come? Pooling is assumed that you're going see
whoever is available next, not whoever you're used to serving.
This can hurt the customer experience but it can also lead to additional setup
times. Because the person who was serving and who
has never served you in the past, might just not be as efficient as your usual
provider. Classic examples of pooling have been in
the area of healthcare, where we have seen a strong trend towards group practices and
larger healthcare systems instead of this solo doctor offices that we saw 50 or 100
years ago. One of the hottest areas of work right now
is in the energy field. The problem of pooling is that the supply
and demand of energy, it varies wildly across the country.
So, if we're able to pool through a smart grid, our electricity, we're going to be
able to get much higher utilization levels and still provide the same quality of
service. Notice the idea of partial pooling that we
talked about in the context of flexibility and production plans.
We talked about how in the automotive industry, some companies including Nissan,
have been able to really, instead of having every plant be able to produce
every vehicle, be able to have every vehicle be produced in two plant, so that
we can get almost all the benefits of pooling without paying all the cost.
When I introduced the concept of pooling in the last module, I mentioned that
pooling is probably one of the greatest insights from the field of operations
management. The reason for that is pooling helps us
shift the frontier of the process. When we dealt with waiting time problems
through adjustments in the staffing plan, it was good, but it was simply walking up
and down the efficient frontier. We increased utilization to gain
efficiency but we decreased responsiveness and vice versa.
Pooling in contrast, lets us shift to frontier.
Pulling however, is not without cost. We have to make investment or sacrifices
to have this increased flexibility in the process.