3、MPC算法分类:线性MPC、非线性MPC、鲁棒MPC、自适应MPC、分布式MPC

聊到MPC的分类,我估计很多刚入行的朋友会有点懵。说实话,我刚接触那会儿也晕——怎么同一个控制框架,还能分出这么多花样?

其实没那么复杂。你想想看,MPC的核心就是“建模+预测+优化”。分类的本质,就是看你对这三个环节做了哪些“特殊处理”。

我个人习惯把MPC分成五大流派。下面咱们一个一个捋清楚。

MPC算法分类 线性MPC 非线性MPC 鲁棒MPC 自适应MPC 分布式MPC 核心区别:模型形式 | 优化策略 | 鲁棒性处理 | 自适应机制 | 架构分布

3.1 线性MPC:最经典的入门款

线性MPC,说白了就是假设你的系统是线性的。模型长这样:x(k+1) = A·x(k) + B·u(k)。目标函数是二次型,约束也是线性的。

为什么它最流行?因为求解快啊!二次规划(QP)问题,成熟的求解器一抓一大把。我在做电机转速控制时,用的就是线性MPC。采样周期1ms,QP求解稳稳的。

核心特点:
  • 模型线性,求解效率高
  • 适合工作点附近的小范围控制
  • 工程落地最成熟
我的经验: 线性MPC不是万能的。如果系统工作点变化很大,比如飞行器从平飞到倒飞,线性模型就扛不住了。这时候你得考虑非线性MPC。

3.2 非线性MPC:硬核玩家的选择

非线性MPC,模型不再是简单的A、B矩阵了。可能是微分方程,可能是神经网络,甚至是一堆查表数据。

举个例子,化学反应釜的温度控制。反应速率和温度是指数关系,线性模型根本描述不了。这时候非线性MPC就派上用场了。

但代价也很明显——求解慢。非线性优化问题,动不动就要迭代几十次。我曾经在项目里用非线性MPC控制机械臂,采样周期不得不拉到100ms,就为了给求解器留够时间。

避坑指南: 我曾经因为非线性MPC求解超时,导致控制器输出滞后,系统直接震荡。后来加了求解时间监控和fallback策略,才稳住。记住:实时性永远是第一位的。

3.3 鲁棒MPC:专治各种不确定性

鲁棒MPC,说白了就是“我预判了你的预判”。它不光考虑标称模型,还把模型误差、外部扰动都考虑进去了。

我记得在做一个无人机编队项目时,风扰是个大问题。普通MPC飞得好好的,突然一阵横风过来,无人机就偏航了。换成鲁棒MPC后,控制器会自动预留控制余量,抗干扰能力强了一大截。

鲁棒MPC的常见做法有两种:

  • min-max优化: 在最坏情况下做优化,保证无论扰动多大,系统都稳定
  • Tube MPC: 用一个“管道”约束状态轨迹,确保实际状态始终在管道内
适用场景: 模型精度差、外部扰动大的场合。比如自动驾驶、无人机、过程控制。

3.4 自适应MPC:边学边控的聪明家伙

自适应MPC,核心思想是“在线更新模型”。系统参数变了?没关系,我实时辨识,模型跟着变。

你想想看,一个电池管理系统,电池老化后内阻会变。固定模型的MPC,用久了性能就下降。自适应MPC就不一样,它每隔一段时间重新辨识参数,模型始终贴合实际。

我建议做自适应MPC时注意两点:

  1. 激励条件: 系统必须有足够的激励,参数辨识才准。如果一直稳态运行,辨识结果会漂移。
  2. 模型切换平滑: 模型突变会导致控制量跳变,容易引发震荡。加个低通滤波或者渐变策略会好很多。
一个小技巧: 自适应MPC的辨识周期不要设太短。我曾经设成10ms一次,结果辨识噪声太大,控制器反而更差了。后来改成1秒一次,效果立竿见影。

3.5 分布式MPC:多智能体的协作艺术

分布式MPC,解决的是“多个子系统怎么协同控制”的问题。每个子系统有自己的MPC控制器,但彼此之间要交换信息,达成全局最优。

举个例子,一个智能电网有几十个分布式电源。如果每个电源各自为政,电网电压可能崩溃。分布式MPC让每个电源的控制器互相通信,协调出力,既保证局部稳定,又兼顾全局经济性。

分布式MPC的架构主要有三种:

架构类型 通信方式 优缺点
集中式 所有信息汇总到中心 全局最优,但通信量大、单点故障
分散式 完全不通信 鲁棒性好,但全局性能差
分布式 邻居间交换信息 折中方案,工程中最常用
注意: 分布式MPC的通信延迟是个大坑。我曾经在项目里因为网络丢包,导致两个控制器互相等待,系统直接死锁。后来加了超时机制和本地fallback策略,才算解决。

3.6 怎么选?我的建议

说了这么多,到底该用哪种?我一般按这个思路来:

  • 系统线性度好、工作点固定: 线性MPC,省心省力
  • 强非线性、大范围工况: 非线性MPC,但要做好实时性评估
  • 模型不准、扰动大: 鲁棒MPC,牺牲一点性能换稳定性
  • 系统参数时变: 自适应MPC,但注意辨识策略
  • 多子系统协同: 分布式MPC,通信设计是关键

嗯,MPC的分类就聊到这儿。每种算法都有它的脾气,选对了事半功倍,选错了...嗯,你懂的。


公众号:蓝海资料掘金营,微信deep3321