Tuesday, October 23, 2012

How a CFO Can Make a Trip to the Airport Productive

Over this past week I had to make two separate trips: one to deliver a presentation to the Association of Finance Professional’s Annual Conference and one to participate in an Advisory Board panel for a financial institution.
Traveling through airports can be quite an ordeal, but much of the experience can be analyzed using “queuing models”, a concept we briefly discussed in our last Treasury Café post “How Cloud Computing is an Example of Finance Principles”. Since at times it is a necessary evil, we might as well go ahead and make the most of our journey!
Queuing Models

Figure A
At a minimum, building a queuing model requires the following inputs:
·         Number of queues in the system
·         Number of servers in the system
·         Arrival rate of “customers” into the queue per time period
·         Service rate of the servers per time period
The number of queues and servers may vary. At the airport ticket counter, there is usually a single line that is formed, and once we make it through the line we go to the next ticket agent that is open (single queue, multiple servers). Conversely, at many fast food restaurants there are multiple lines formed, one for each cash register that is open (multiple queues, multiple servers). Depending on the situation, there can be many possible combinations of these two factors. Figure A visualizes the single and multiple queue types.

Figure B
The arrival rate of customers per time period is often calculated assuming a Poisson distribution. This distribution is linked in mathematical ways to our binomial distribution that we looked at in “How Cloud Computing is an Example of Finance Principles”. Figure B shows the probability function of the Poisson process, where the Greek letter l indicates the arrivals per unit of time.  

Figure C
Figure C shows the results of the Poisson equation assuming people arrive at an airline ticket counter line at the rate of 2 per minute ( l = 2). Reading the first line in the results, the probability that no people show up in the next minute is about 13.5%. The probabilities that 1 or 2 people show up in the next minute are both about 27%, and so on.
Service rates can be modeled in different ways. They may be static with no variance at all, they might range equally between a minimum and maximum value, or they can take the form of any number of statistical distributions. A distribution that appears often in queuing model literature is the exponential distribution (the probability function for which is shown in Figure D).
In order to simulate an exponential distribution, we can use two methods:
Figure D
·        Using a uniform distribution, we can generate a random number (r) between the values of 0 and 1, and then substitute that value into the equation in Figure E. In Excel you can do this using the RANDBETWEEN() function,
·        Use a statistical program that has the capability of generating exponentially distributed variables once the inputs are supplied. For example, in R this is accomplished by the rexp() function.
Figure E
The Simulated Airport Ordeal
Let’s say that customers arrive at the ticket line at the rate of 2 per minute ( l=2). There are 4 ticket agents and it takes them 2 minutes to check a passenger in, print their boarding pass, check their luggage, etc. (so rate per minute is µ=0.5). We will further assume that the service times match an exponential distribution.
The passenger arrivals-per-time-period follows a Poisson distribution. One of the characteristics of the Poisson distribution is that the times between the arrivals (called the inter-arrival time) follows an exponential distribution. Because of this, we can simulate the passenger arrival process using an exponential distribution discussed above just as we can the service times.
This example is established to maximize the ticket agent’s utilization. Using the utilization equation from our last post (l/sµ) we can calculate utilization to be 100% (2/(4*.5)). Intuitively, if 2 passengers arrive every minute, and it takes each agent 2 minutes to process a passenger, then in 2 minutes time 4 passengers will have arrived on average, and thus all 4 agents will be busy processing passenger requests.
Figure F shows two rows of R output from this simulation process for the first and second customers arriving into the system. Tying this calculation back to our discussion above, the simulated values (a_rand and s_rand) are between 0 and 1, as specified in our uniform distribution. The next two columns, s_ia and s_st, are the values created using the equation in Figure E. Figure G shows the specific calculation for s_ia in the 2nd row of data.
Figure F
Recalling that our service and arrival rates are in minute measurements, we multiply this result by 60 to convert to measurements in terms of seconds, with the result of approximately 41 (.691387 * 60) for the 2nd customer. Checking our simulation results, looking at the arrival time column in Figure F (column labeled at), we see that the first passenger arrived at 00:21 seconds and the second passenger arrived at 01:02, or 41 seconds later.
Figure G
Now that we have established the parameters of the model, we can simulate what occurs over time as passengers arrive into the system. The simulation will produce many different pieces of information which might prove of interest, such as:
·         Waiting time – average, minimum, maximum
·         Service time – average, minimum, maximum
·         Line – average, minimum and maximum number of customers in line
Figure H
To illustrate, Figure H shows three sample paths for the next 1,000 passengers entering the system generated by the simulation. The orange line is the average of 100 simulations for each of the 1,000 passengers, and the brown line is the average waiting time of all passengers, which is around 20 minutes.
While the average waiting time is 20 minutes across all passengers, the individual simulation paths illustrate the variability that occurs. One of the black lines touches 0 on several occasions, indicating that it is within the realm of possibility that no line is encountered upon arrival at the ticketing booth. However, one of the other black lines indicates that hour long waits are also within the realm of possibility.
Figure I
Finally, in order to check our work, we mentioned earlier that using the exponential distribution to simulate inter-arrival times will result in our arrival-times-per-minute exhibiting a Poisson distribution. Figure I compares our actual simulation results to a Poisson Distribution with l=2, which indicates our simulation has achieved a pretty good fit with the theoretical result.
Fulfilling the Partnering Role
We have covered the Treasury Vision in a number of posts (see the “Labels” sidebar on this post), most recently “Triangulating Vision and Mission Using Mind Maps”, where we identified that one of the main components of our activity is fulfilling “with people” functions.
Since the Queuing Model is a robust means of analyzing processes, especially production and customer facing ones, adding this model to our “Analytics Toolkit” provides Finance and Treasury with another potential means of working with our operating units in a meaningful and value-added way.
Furthermore, by leveraging the analytic capabilities of the finance function in the creation of models such as this, finance is placed in a role where we can assist our business unit partners with decisions in the operations, marketing, and service areas, such as:
·        What staffing levels need to be maintained to make the average waiting time x?
·        What is the cost of our current operations in terms of future lost customer revenue? How does this compare to our service costs?
·        How does our customer experience compare to our competitors?
·        What is the best route to improve performance – reducing service time or adding agents?
Figure J
As an example, let’s say that Airline B staffs their ticket counter with 5 agents vs. our 4 (from the previous simulation). They have the same arrival and service time rates as our Airline does. How does their customer waiting time performance compare to ours? Figure J shows the customer waiting time between our airline and Airline B’s.
This information can then be utilized by the business unit’s management to determine whether this represents a feasible area of improvement, an indication as to the extent of the improvement, and how much it might cost.
Closer to Home
We can use these models to assess parts of the CFO organization’s processes as well.
Suppose we have 50 subsidiaries for which financial statements must be developed. This information then needs to be consolidated in order to produce our firm’s overall financial statements.
Figure K
Currently, there are 5 people who process the consolidated financial close information. Each of the 5 people are responsible for 10 subsidiaries each, which they do every month due to the assumption that specialization improves the time to completion.
Completed financial information arrives into this area at the rate of 1 every two hours after month’s end, and follows a Poisson distribution with respect to this arrival rate (l=0.5). Let’s assume that they can process a subsidiary’s financial information in 4 hours, and this processing exhibits an exponential distribution (µ=0.25).
By changing the structure of the process, can we improve the “time to close”?
If we switch to a single queue, multiple server process this might reduce our time to close through the “pooling principle” we discussed in the last post.
However, since each staff member processes the same subsidiaries month after month, there might be a “learning curve” benefit to their work.
Figure K shows the R output for three separate simulation runs. The current multi-queue, multi-server model is the current state. The simple switch to single queue, multi-server is then shown next. As predicted, the “pooling principle” provides significant improvement. Assuming 8 hour workdays, the books can be closed about 2 days sooner! However, if we adjust the service time from µ=.25 to µ=.2 (i.e. 5 hours to process instead of 4) due to loss of “learning curve” benefits, the results still show improvement though not as much.
What You Can Do
The queuing model is an analytical tool that can be productively applied within your organization. In order to do so, consider the following:
·        Review processes within your particular function. Where do queues form? Are there other departments or units requiring information or process activities from your group (i.e. internal customers)? Do any of your process inputs begin with queues or batches that arrive from other areas (either internal or external)? Are there queues or batches that form as part of your process activities? Can any of these be made more efficient by changing the configuration from multiple queue to single queue, taking advantage of the pooling principle? Can learning curve or specialization benefits be realized by changing a single queue to a multiple queue setup?
·        Look at other units or functions within your company where queues are a fact of life. Approach those business areas or functions and learn how they are configured to process these queues, and what estimation methods they use to make staffing decisions, predict workflow, and optimize service utilization and efficiency. If they are not already doing so, inquire as to their interest in using a queuing model to provide another perspective on their operations. If they are doing so, learn how they are currently employing this model and whether they are willing to allow you to participate in the modeling activity going forward.
·        Develop your queue modeling “chops”. Create some “ready to go” queuing models in Excel, R, or another statistical program in use by your firm. Simply “googling” the term “Queue Model Examples” or something similar will pull up a number of articles that you can use to calibrate the information and solutions generated by the models you develop (see this one as an example). This practice prepares you to be in a “ready-state” when an opportunity arises to deploy a queuing model analysis.
Key Takeaways
Queuing Models are a useful tool that can be applied by Finance and Treasury for use internally and as a method of providing decision support functionality to its business unit partners.
·         Where is a Queuing Model applicable in your organization?
Add to the discussion with your thoughts, comments, questions and feedback! Please share Treasury Café with others. Thank you!


  1. What A GREAT post! On top the wonderful handhold understanding of the statistical problem frame and pattern recognition, I especially appreciate the step by step show and tell of the analysis.
    Every organization could benefit from a outward looking CFO willing to share their analysis strengths to enhance other departments processes.
    Cross-functional analysis potentially creates new insights on both sides that lead to new opportunities. With the CFO taking the lead, chances increase that those opportunities can be developed using cost savings!

    I'm wondering what cost savings, or additional value captured organizations have realized after modeling to understand queueing situations?

    1. Rachel,

      Thanks for your comments. I think your point that cross-functional analysis is a useful means to generate insights into the organization is a significant one, and for those seeking to add value to their firms is worthy of exploring.

      The finance group certainly has cost control discipline, yet often that can get in the way when seeking to build bridges to other parts of an organization. Too much reliance on the "cost cop" role will make other groups "run away" when finance approaches. For this reason, I try to build examples in this blog where it is a side-by-side activity as opposed to an adversarial one.

      Thank you for taking the time to share!