  This work introduces a formulation of model predictive control (MPC) which
adaptively reasons about the complexity of the model based on the task while
maintaining feasibility and stability guarantees. Existing MPC implementations
often handle computational complexity by shortening prediction horizons or
simplifying models, both of which can result in instability. Inspired by
related approaches in behavioral economics, motion planning, and biomechanics,
our method solves MPC problems with a simple model for dynamics and constraints
over regions of the horizon where such a model is feasible and a complex model
where it is not. The approach leverages an interleaving of planning and
execution to iteratively identify these regions, which can be safely simplified
if they satisfy an exact template/anchor relationship. We show that this method
does not compromise the stability and feasibility properties of the system, and
measure performance in simulation experiments on a quadrupedal robot executing
agile behaviors over terrains of interest. We find that this adaptive method
enables more agile motion and expands the range of executable tasks compared to
fixed-complexity implementations.
