Iterative Learning Control (ILC)

Robotics applications and industrial processes such as robotic pick-and-place tasks, 3D printing, multi-pass milling, and precision motion are hard to model and full of nonlinearities. In addition, they include fast motions that do not allow for real-time changes. Bad news for feedback control?

Generally yes, but these industrial applications have another property that can be exploited: the tasks of the machines, e.g. a pick-and place robot, are highly repetitive. Hence, instead of adjusting the control during the motion, it can be improved from repetition to repetition of the task. The controller leverages the results from the previous iterations to optimise the input for the following round. This is called Iterative Learning Control (ILC).

By carefully mixing the model information about the underlying process with the actual measurements it is possible to design robust algorithms that ensure high performance. Leveraging the repetitions as iterations of an optimisation algorithm provides a framework to prove convergence and other favorable performance characteristics. Such algorithms are often easy to implement and have minimal requirements in terms of additional hardware and software.

As a result, ILC has found a wide range of applications in industry and research.