../

Model-Predictive Control

Table of Contents

General Concept

Recipe for trajectory optimization.

  1. Observe the current state at time $t$.
  2. Plan a cost-minimizing trajectory of actions for time $t$ to $t+T$, where $T$ is a finite-time horizon.
  3. Execute only the first action of the trajectory. Repeat.

How to design for global stability with local optimizations?

Implementation

The simplest implementation of model-predictive control (MPC) is probably random shooting MPC. Random shooting MPC generates candidate trajectories by randomly sampling the action space, then selecting the cost-minimizing trajectory from the candidates. There are smarter things that you could do instead, like the cross-entropy method.

Limitations

Planning trajectories requires dynamics model, like a physics engine. This additional complexity can be overkill for simple systems. Furthermore, dependence on a good dynamics model means MPC can be difficult to implement.

Planning over a receding time horizon is also a feature of action chunking policies.1