One of the observations was that for me, for IFS, AI is very much a means to a goal. It’s about applying to a very specific use case to deliver better results. One of these use cases is about workforce optimization.
For more than 12 years, IFS has been using machine learning algorithms and other smart techniques inside IFS Planning & Scheduling Optimization (PSO) to provide optimized schedules for our customers.
At this point, I want to introduce Pete Bailey, Product Architect for IFS PSO. Jointly we have written this blog in order to explain how different techniques are used to create a smarter scheduling engine.
Dynamic Scheduling Engine
One of the major components in IFS PSO is the Dynamic Scheduling Engine (DSE). The DSE is a general-purpose optimization engine, which deals with goals and constraints, and seeks to find the best solution to a problem. It has no specific knowledge of field service, logistics, sales and operations planning, or staff rostering, yet it is used to optimize businesses in all these areas.
It does this by automatically adapting to the type of problem that it is presented with, choosing from the 35 different algorithms: a combination of well-known ones (for example, simulated annealing, genetic and pheromone-based algorithms) and proprietary algorithms developed by IFS. Based on the characteristics of the problem it is presented with, the DSE automatically decides which algorithm is best suited. Usually, it chooses to use a combination of between two and six algorithms, since combinations generally work better than a single algorithm alone.
Having chosen the algorithms, the DSE uses machine learning to dynamically adapt each algorithm’s parameters to the business goals which have been specified. It does this by using a neural network to discover which parameters are making the difference when the schedules are getting better or worse. This calibration is periodically rechecked so that if the nature of the business changes over time, the system will automatically adapt without the need for any human intervention or re-implementation effort.
While the algorithms are running, hyper-heuristics are fine-tuning the parameters minute by minute, to reflect the difference between starting a schedule from scratch and adjusting one which is already pretty good.
So, the DSE is automatically adapting to its environment at three different levels:
- Algorithm choice
- Algorithm parameter tuning
This is what gives it flexibility and provides a more intelligent solution. Because all the adaptation is automatically learned, it often finds creative solutions to particular customer problems. Specifically, it is better at ‘thinking outside the box’ than how humans typically approach a complex optimization problem.
The reason that the DSE is better than humans, for this sort of problem, is because it is better at searching through a large number of possible solutions. If you look at playing chess, there are 10120 possible games. The Chinese game of Go has 10170 possibilities. An average field service problem with 100 jobs to be scheduled and 20 engineers already leads to 10179 possibilities. Imagine more complex problems with tens of thousands of jobs and thousands of engineers. Humans solve these problems by applying simple rules, such as ‘give every job to the nearest engineer’, but this does not work well if there are service level agreements (SLAs), preferences and complex constraints.
Let’s have a look at an example from one of our customers.
Cubic Transportation Systems
Cubic Transportation Systems is a leading provider of integrated systems and services for transportation and traffic management, providing ticketing and fare collection services for some large customers. As part of its IFS Planning & Scheduling Optimization solution, the company has been using the IFS Dynamic Scheduling Engine since 2009.
When Cubic first started using the DSE, they noticed that the system was making different scheduling decisions, compared to how it operated previously with human schedulers. For instance, there may be three repair jobs, all at the same customer location, and previously an engineer would have traveled to this location and done all three jobs. But sometimes, the DSE would schedule the engineer to do just the urgent jobs at that location and then travel elsewhere to another urgent job, leaving the lower-priority jobs to be done later either by the same engineer or a different one.
Another example that Cubic noticed is that, when an engineer started work, they would often walk straight past a job that needed doing in order to get to other jobs which were more important or where a group of jobs was clustered together or were more appropriate for the engineer. They questioned this initially until it became clear that the DSE was optimizing the whole schedule and that an engineer would return to do the original job later.
The DSE was not told to do this. It was given the constraints – skills needed, SLAs (target completion times), travel times – and it chose how to solve the problem optimally. By focusing on urgent jobs, it was able to improve the SLA hit rate.
As a result of the DSE thinking of innovative solutions, Cubic was able to increase the availability of working machines by 20 percent, which also enabled them to take on more contracts without recruiting additional staff.
Concluding thoughts on AI
Hopefully, this has given insight into that fact that artificial intelligence really is just that means towards a goal, and how IFS is applying it in IFS PSO for many years already. In this case, it’s about leveraging machine learning to get to better-optimized schedules. Feel free to reach out if you want to know more or read any of the upcoming blog posts.
Do you have questions or comments about AI?
We’d love to hear them so please leave us a message below.