Robot control

Iterative learning control

Definition

Iterative learning control is a method for improving a finite-duration task that a system performs repeatedly. It updates the command for the next trial using tracking errors or other measurements from earlier trials.

Also known as: ILC, Iterative learning controller

Updated

Learn across repetitions

An iterative learning controller records how a task unfolded over one trial and changes the time-indexed input for the next trial. A simple update can add a filtered version of the previous tracking error to the previous command. The controller therefore learns along a trial axis as well as reacting to time within one execution.

The survey by Bristow, Tharayil, and Alleyne treats ILC as a control method for systems that repeat the same operation and reviews its design and convergence properties. Repetitive robot tasks include tracing a path, placing a component, and applying a prescribed force profile.

Feedforward improvement can sit beside feedback

ILC commonly learns a feedforward command while an ordinary feedback loop rejects disturbances during each trial. It is not the same as trajectory optimization, which can calculate a trajectory from a model without repeated physical executions. It is also not identical to reinforcement learning: an ILC update can use a structured tracking-error rule without learning a general state-to-action policy.

The method can adjust parameters rather than a complete command trace. A 2023 robot study used an iterative scheme with adaptive gradient methods to update admittance parameters for repeated human-robot manipulation tasks. That experiment demonstrates one application, not a universal improvement for every collaborative task.

Repetition is the main constraint

Learning from the last trial is useful only when important conditions remain comparable. A moved fixture, different payload, changing human partner, or non-repeating contact can make the previous error a poor correction signal. Noise and outliers can also be written into the next command if the update is too aggressive.

Convergence depends on the plant, learning filter, timing alignment, and update gain. Even a convergent sequence can violate actuator or contact limits during early trials. Practical ILC therefore needs safe initial commands, bounded updates, and a way to reset or relearn when the task changes.

Sources