July 19, 2018
Speed up solving complex problems—be lazy and only work crucial tasks
A new improvement to a programming technique called 'lazy grounding' could solve hard-set and complex issues in freight logistics, routing and power grids by drastically reducing computation times.
A new approach to 'lazy grounding' is set to make a viable and attractive solution for many fields of industry and large multi-nationals dealing with complex systems. Antonius Weinzierl of Aalto University and Bart Bogaerts from KU Leuven have just presented their paper at one of the most renowned scientific conferences on artificial intelligence, JCAI-ECAI-18 in Stockholm.
For tasks with hundreds of parameters and thousands of possible combinations, solutions have long required time and effort. For example, when a freight train engine breaks down, the train operator is left with the challenge of finding a replacement engine that can pull the train's weight and is compatible with all kinds of requirements, like the track's signaling system, power grid, and track gauge. Maybe the operator has a suitable engine available, but the solution may only become clear after shuffling around several engines. In human hands, this process can take hours.
"Quickly finding a replacement saves resources across the board, because larger delays incur penalties and may even bring business to a halt," says postdoctoral researcher Weinzierl.
Yet even state-of-the-art computational methods for solving these kinds of problems have met their limits in industry. Current methods of searching for solutions that are both absolutely correct and viable require more memory than is available in today's computers. A recent method to 'ground' the computation in a way that only the most urgent and relevant tasks are taken care of—hence the laziness—frees up memory, but may get stuck in searching for a solution and suddenly require an unreasonable amount of time.
To avoid such jams and tackle the root issue of memory consumption, the researchers have suggested a new way to pinpoint the small subset of decisions that actually contribute to a wrong turn somewhere down the line—and ignore the rest.
"It's similar to finding your way out of a labyrinth, with or without a map. Without one, you have to explore every path and corner to find the exit. Current programmes solve complex tasks like this by first drawing a complete map of the labyrinth and only then starting to work their way out," explains Weinzierl.
But drawing the whole map takes up a lot of memory. Lazy grounding would let you navigate without a map altogether, but when you eventually wind up lost, having the right part of the map would come in handy to not get stuck.
"Our approach essentially draws a local part of the map on demand and allows you to pinpoint where exactly the initial wrong turn was and how to get straight back on track," Weinzierl says.