Nonlinear MPC
Definition
Nonlinear Model Predictive Control (NMPC) is the model-predictive control strategy in which the
prediction model is the full nonlinear plant — here the satellite–manipulator equations of motion —
used directly without any linearization. At each sampling instant the controller solves a finite-horizon
optimal control problem (OCP) over the predicted states, applies only the first control of the optimized
sequence, then shifts the horizon forward (the receding-horizon strategy). In rybus2017control NMPC is the
real-time tracking module that drives the end-effector along a reference trajectory produced by a separate
offline trajectory-optimization module; the source assumes the free-floating regime (uncontrolled base,
arm reaction compensated by base motion), modelled with a generalized-coordinate state of dimension ,
and notes the system is nonholonomic. This is not our free-flying regime — see Open Questions.
Key Equations
Symbols per notation.md.
At each instant the controller solves, over a prediction horizon, a least-squares tracking OCP
with the extended tracking state and the end-effector position appended so it can be penalized directly. Only the first control of the optimized sequence is applied, then the horizon recedes. The control torque is split as
though the source’s NMPC uses the full nonlinear model and discards , relying on alone.
Notation note: match notation.md (coupled inertia / Coriolis); (LSQ weighting
matrix), (generalized forces), (prediction-horizon length, over intervals in the source),
and the source’s free-floating state symbols are
not in notation.md (this page is general/technique, not the circumcentroidal FFSM model) — reproduced source-faithfully, not canonicalized.
Source Support
- rybus2017control — primary: builds a two-module control system (offline
trajectory optimization + real-time NMPC) for a free-floating planar satellite–manipulator; NMPC uses
the full nonlinear -DOF model with no linearization, an ACADO least-squares objective, and outperforms
a Dynamic-Jacobian-inverse controller and MSAC under disturbances and parameter mismatch. Notes that prior
space-manipulator MPC assumed a fixed base and that high real-time cost is NMPC’s main drawback.
Related Topics
- model_predictive_control — the parent technique; NMPC is the nonlinear
(no-linearization) instance of it. - receding_horizon_control — the implicit feedback mechanism NMPC uses:
re-solve, apply first move, shift the horizon. - trajectory_tracking — NMPC’s role here is end-effector trajectory tracking; the
OCP cost penalizes the tracking error . - trajectory_optimization — supplies the offline reference trajectory that NMPC
then realizes online; the two modules are complementary (global plan vs. real-time correction). - sequential_convex_programming — an alternative way to solve the nonlinear
OCP (convexify-and-iterate) versus the direct nonlinear-program solve used here via ACADO.
Open Questions
- The source’s NMPC assumes a free-floating base (state folds in CoM position and base attitude, system
is nonholonomic). For our free-flying (fully-actuated 6-DOF base) system the base is directly actuated
and momentum is not conserved — does the same OCP structure carry over, and does the nonholonomic
characterization even apply once the base is independently commanded? - The source flags high real-time computational cost as NMPC’s major disadvantage (especially for -DOF
manipulators with their generalized-coordinate model). Is full-nonlinear NMPC tractable in real time for a
redundant free-flying arm, or is convexification (sequential_convex_programming)
or feedback linearization needed? - Stability is asserted empirically (“no unstable behaviour observed”) rather than proven; the source itself
calls for an analytical stability analysis. What terminal cost / constraint would certify recursive
feasibility and stability for the free-flying case?