具身智能新手名词表English

非线性模型预测控制

Nonlinear Model Predictive ControlNMPC进阶

用非线性动力学模型预测未来、每个周期在线求解优化问题的 MPC。

模型预测控制(MPC)的做法是:每个控制周期用系统模型预测未来一段时间的状态,求解一个优化问题,得到让代价最小且满足约束的一串控制量,只执行第一个,下个周期用新的测量值重算,称为滚动时域。NMPC 是模型或约束为非线性的 MPC,例如直接用机器人的全身刚体动力学或质心动力学,而不先做线性化。好处是在大幅度、快速运动中预测更准,能直接处理摩擦锥、落足区域、避障等非线性约束;代价是优化问题非凸,计算量大,也不保证找到全局最优。实际中常用多重打靶或直接配点离散问题,用序列二次规划(SQP)求解,并采用「实时迭代」:每个周期只迭代一两步、不追求完全收敛,以赶上控制频率。常用工具有 acados、OCS2、CasADi。凸 MPC 则把模型简化成线性、问题是凸的,更快但适用范围窄。

例子legged_control 开源框架在宇树 A1 四足上用 NMPC(基于 OCS2,多重打靶 + SQP 求解)把期望的躯干速度转成未来的状态轨迹,再交给全身控制器算关节力矩。

也叫
非线性MPC、Nonlinear MPC
相关
模型预测控制、凸 MPC、多重打靶法、序列二次规划、全身控制、legged_control
来源
Wikipedia: Model predictive control
GitHub: qiayuanl/legged_control
Perceptive Locomotion through Nonlinear Model Predictive Control (arXiv 2208.08373)

在完整名词表里查看 →