Barrett Coakley | 01.16.19
Summary >

Have you ever heard of the “traveling salesman” problem? It goes like this: If a salesman must visit all 48 capital cities in the continental United States and visit each city only once, what path should he take to yield the shortest overall distance?

Interesting problem isn’t it? It’s simple to state of course, but if you spend a little time with the problem, you’ll quickly see what a brainteaser it is. That’s because there are literally millions of unique travel paths the salesperson can take ... but only one optimal path. Many mathematicians have spent a good part of their careers trying to find the answer. But notice that in the traveling salesman problem, only one factor – distance – must be optimized.

Compare that to field scheduling where you have hundreds of factors – travel distance, travel time, overtime costs, labor costs, employee availability and skills, customer availability and preferences, contractor availability, and others to deal with. So a multidimensional problem such as yours makes the one- dimensional traveling salesman problem look like child’s play. This is why field service organizations need a sophisticated schedule optimization solution because calculating optimal decisions overwhelms the capabilities of traditional workforce management systems.

Let’s walk through a typical schedule optimization problem to highlight the complexity.

First, a scheduling system calculates job assignments in two distinct phases – job matching and optimization. The job-matching phase is the easy part of the problem. It’s here where you’re comparing your technician list against a set of rules. The rules are the hard-and-fast requirements of the job at hand. For instance, you may have a rule that says, “Does the person have the proper certification to install cable?”

That’s a simple decision to make. If a technician is not certified correctly for the job, does not have the required parts or is too far away, you can safely eliminate these people from the pool of techs you assign to similar jobs. This is straightforward “yes” or “no” decision making. It requires no elaborate calculating. But it’s in the second phase – the optimization phase – where the troubles begin because it’s here where you’re no longer dealing with simple rules, but objectives.

Objectives include things such as reducing travel time, lowering labor costs, balancing workloads, and cutting mileage costs. Unfortunately, when you enter the world of objectives, simple “yes” or “no” answers no longer work. Objectives introduce constraints, so your answer is never black or white like with job matching.

In fact, the only way a scheduling system can mathematically handle objectives is to prioritize the business constraints – weighing the importance of one constraint versus another.

For example, say you have five technicians qualified for a cable installation. “Qualified” means they have the right skills, are available, and meet any other “must-have” criteria. Now if “reducing travel times” is the most important factor on your list of objectives, then the system pares the technician pool down to the three who are closest to the job site. If the next most important constraint is “lowering labor costs,” then you select the one technician out of the remaining three who’s worked the least number of hours this month. This is how a scheduling system optimizes through a process of scoring and top-down elimination.

Schedule Optimization at Work

One of Click’s communication customers was manually scheduling jobs which led to many inefficiencies. The company knew they needed to automate and optimize this problem to increase operational efficiencies. After implementing Click, the firm saw many improvements, including:

  • Scheduled tasks per day increased 25%
  • Tasks assigned to internal engineers increased 32% (cost savings if it goes to internal engineer)
  • Tasks assigned to external engineers decreased by 14%
  • Tasks scheduled after latest time to start dropped by 36%
  • Travel time was reduced by 13%

Click’s schedule optimization delivered operational improvements and positively impacted the company’s bottom line.

The complexity is due to the fact that each scheduling decision has a factorial growth. For example, there are 6 possible schedules for 3 jobs and 3 engineers, while there are 720 possible schedules for 6 jobs and 6 engineers, and there are 3,682,800 possible schedules for 10 jobs and 10 engineers. Optimizing the schedule for an organization with 100's or 1000's of engineers is far beyond the capability of simplistic scheduling products even those claiming to offer ‘some’ optimization.

Every optimized decision requires you to do an elaborate scoring calculation – to prioritize constraints such as overtime, travel time, mileage – and dozens of other business priorities. Now, we know that simple job matching will quickly purge most of those 7,000 field technicians from the job pool. But even still, if only 15 technicians are left in the optimization engine for scoring, that’s still a mind-boggling number of combinations to compute – something like 1.3 trillion. And that’s for only one job!

The good news is that it is possible to master optimized scheduling and minimize the impact of unplanned changes. Given the complexity, many FSM scheduling optimization solutions approach the problem differently, so it’s important that you walk through your specific business requirements and scenarios to ensure the tool performs as you need.