Algorithms, Heuristics, and Optimization

Algorithms, Heuristics, and Optimization

Ric Kosiba, Ph.D., Genesys’ Decisions Group

The World is Running on Algorithms

When I was younger, I was lucky to meet two brilliant and fun operations research professors at Purdue, Jeff Wright and Mark Houck. They turned me on to this really cool and exciting branch of engineering and I switched majors and became an operations research (OR) engineer. My favorite definition of operations research is that it is the application of engineering principles and algorithms to business problems. It is a great time to be an OR engineer; we are entering the golden age of algorithm building.

Algorithms are now everywhere: Algorithms rate our credit worthiness. Netflix and Amazon use them to recommend products to us. Garmin uses algorithms to route our trips. The NSA uses them to read our emails and prioritize those that may be threats. Facebook sorts my mother’s (ha!) news feed using algorithms. The police use face recognition and predictive algorithms to spot likely trouble spots and criminals. Algorithms are beginning to become so commonplace in our lives that we do not even think about them, but we benefit from the efficiency that they bring.

Oh! Except us workforce management folks.

We have been among the earliest of all algorithm builders and users, and surprisingly, we still think about them, debate about them, and monitor their effectiveness. That is because algorithms are core to our industry.

Many Flavors of Algorithms

There are many different types of algorithms, all designed to solve different sorts of problems. In workforce management, we tend to rely on a few sorts of algorithms — often called math models — that serve to do one of four things: predict, mimic, group, or solve. Let’s go through them.

Predictive Models

When we develop new volume, handle time, or shrinkage forecasts, we are using a predictive model. This type of model takes a stream of historical data and extrapolates expected future performance, using algorithms or equations that convert history into a best guess forecast. Predictive modeling is really a process, where a prediction is tested using already known results (hold out samples), and the resulting validation serves to estimate future error. Variance analyses monitor our predictive modeling process — are our models off when compared to actuals this month?
Most contact center data is time series data, meaning data are kept in common time intervals, usually half-hourly, daily, or weekly, depending on the business questions being asked. Some companies may supplement the time series data with related and predictive complementary time series data.

Descriptive Models

When contact center analysts perform what-if analyses, they employ a mathematical modeling process called descriptive modeling, or more narrowly, simulation. The purpose of these types of models is to understand the relationships between past performance drivers and operational service achieved, between inputs and outputs. Once we validate this relationship by testing the model against real-world past performance, we can estimate future service by forecasting performance drivers and applying a simulation model to evaluate the what-if. For example, we predict volumes and simulate the operation under those volumes to estimate service expected.

This is extremely useful to us workforce management types because one of the most important performance drivers is staffing — and we can use a simulation model of the contact center to determine which staff level leads us to the service levels or abandon rates desired.

The most common but also the least validated descriptive model is the old Erlang C model. This model tends to overstaff significantly (email me at to get a copy of a cool white paper on the subject), so many have now moved to discrete-event or continuous simulation modeling.

Prescriptive Models

My favorite type of modeling — because when done well saves companies a ton of money — is the prescriptive model. These models prescribe solutions; they answer the question “what should we do?”

In workforce management, prescriptive models help us gain significant productivity by better scheduling our agents. In workforce capacity planning, prescriptive models help manage the seasonality of our businesses by developing labor-saving hiring and overtime/controllable shrinkage plans.

There are two major types of prescriptive models, heuristic algorithms and optimization models. Heuristics are algorithms that are designed to search through many combinations of potential solutions and find one that gives a very good answer to our business problem — not the best, but one that is better than is achievable by hand. Optimization models are different — optimization to us operation researchers means something very precise — an optimization model determines the absolute best solution that minimizes or maximizes a specific objective. In workforce management, a mathematically optimized solution would be a set of schedules that simultaneously maximizes service achieved and minimizes costs. For capacity planning, a mathematically optimal solution would be one that develops an absolute least-cost hiring plan that hits service goals each week.

I have a strong bias toward skipping heuristics and using an optimization model to solve these sorts of problems. The most common optimization models are of the sort called linear or mixed integer programs. If a problem can be described to fit a linear program, there are solvers that will develop solutions to these problems with absolute optimality. Lucky for us, most scheduling and capacity planning problems can be solved this way. If your software’s algorithms have been updated in the last ten years or so, you likely have true optimization working to save you money. If you are using a spreadsheet to do your capacity planning or scheduling, you are likely leaving a lot of money on the table by not using these sorts of money-saving algorithms.

Classification Models

More recently, a new type of model has begun to be more common, and is beginning to enter the contact center world — classification models. These models serve to categorize things — usually people — into similar groups. For instance, a classification model might be used to predict that a specific customer might be similar to a previous group of customers and might likely enjoy a specific cross-sell. This customer would be routed differently from a customer who is not a likely member of that classification group; their customer journey will be different. When you hear of machine learning or artificial intelligence, often their use is in classifying people.

Benefits of Using These Models

What are the benefits? First, there are benefits to every one of the types of models we have discussed. Forecasting well can tell you what your volumes will be. Simulating well will tell you how much staff is required. Optimizing hiring will develop just-in-time hiring plans. But only if these models work together. For instance, a great forecast with a poor staff planning simulation will still leave the contact center overstaffed. Hiring plans that are optimized on an overstaffed requirement will optimally staff for the wrong number of agents.

Instead, you want to develop accurate forecasts, push these forecasts to a simulation model that has been validated in order to generate great requirements, and then use a hiring optimizer or scheduling optimizer to develop mathematically optimal schedules or capacity plans. It is by automating the planning or scheduling process with all of these models that will bring the greatest benefit.

Clearly using models like these for workforce management has great benefit to our industry, and you should be using these modeling tools to perform your workforce management and capacity planning.
What are the benefits of automating all of these great models? There are some obvious ones. Exact requirements from a discrete-event simulation will lower staffing costs. Just-in-time hiring optimization, or optimized schedules will also lead to lower staffing costs. A less obvious benefit is that by doing a great job building your capacity planning models or your scheduling algorithms, you will provide the operation with the exact right number of agents every day, which will provide a smoother workforce management process and much more consistent service delivery for your customers.
Algorithms are truly a workforce manager’s friend — and using the right predictive, prescriptive, descriptive, and classification models can truly boost your company’s performance.

Ric Kosiba, PhD is a charter member of SWPP and vice president of Genesys’ Decisions Group. He can be reached at or (410) 224-9883.