MPC与LQR的详细对比分析

从以下几个方面进行阐述:
一,研究对象:是否线性
二,状态方程:离散化
三,目标函数:误差和控制量的极小值
四,工作时域:预测时域,控制时域,滚动优化,求解一次
五,求解方法:QP求解器,变分法求解黎卡提方程
六,LQR和MPC的优缺点:滚动优化,求解时域,实时性,算力,工程常用方法

一, 研究对象:是否线性

MPC:线性和非线性系统均可
LQR:线性系统
非线性系统 在这里插入图片描述
通过
泰勒展开的方法
进行近似离散化为线性系统:
在这里插入图片描述

其中x 为状态的误差, u为控制量

二, 状态方程:离散化

**MPC:**1,对非线性的状态方程进行线性化。2,对线性方程进行离散化
**LQR:**对线性系统就行离散化
连续的线性系统: 在这里插入图片描述

离散化:通过前向欧拉方法进行离散化。
在这里插入图片描述

整理后得:
在这里插入图片描述
为方便描述将离散后的方程记为:
在这里插入图片描述

三, 目标函数:求误差和控制量极小值

在这里插入图片描述
LQR目标函数一个是积分,MPC目标函数一个是累计和,本质都是对代价的累计
当系统对终端状态要求极为严格时,目标函数会加一项终端代价函数,一般情况下该项省略。终端代码为:
在这里插入图片描述在这里插入图片描述

四, 求解方法:QP求解器工具,变分法求黎卡提方程

**MPC:**转化为二次规划问题,利用求解器进行求解,生成控制序列 。
**LQR:**采用变分法,通过求解黎卡提方程进行逼近,最终获取控制序列 。

五, 工作时域:预测时域,控制时域,滚动优化,求解一次

在这里插入图片描述
MPC:是求解预测时间段Np内的控制序列 ,并在下个周期后进行滚动优化,每次只需控制序列的第一个值作为控制的输入。为了提高速度,可只计算控制时间段Nc 内的控制序列时间段(Np-Nc)内的控制量均取Nc-1处的值即可,因为每次只取第一个控制量作为输入即可。
**LQR:**求解预测时间段内的控制序列 ,只求解一次,每个周期下取对应的控制量即可,而不考虑之前周期下实际与规划的误差。

六,LQR和MPC的优缺点:滚动优化,求解时域,实时性,工程常用的方法

LQR缺点:
1,LQR不滚动优化,预测时间段内的控制序列只求解一次,没有考虑实际与规划的误差。
2,LQR求解整个预测时域内的控制序列,而MPC可在更小的时间窗口中求解优化问题,获得次优解,可大大提升求解速度。
3,无约束,假设对控制量无约束。
**MPC缺点:**计算量大,实时性差,对于算力要求高,硬件成本较高,
但两者控制效果相差不大,故工程上横向控制常使用LQR。

  • 28
    点赞
  • 215
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值