LQR控制器的设计与推导
LQR解决的是什么问题?
对于一个离散时间的线性系统,系统的状态方程为:
其中:
是第 步时系统的状态; 是第 步时的控制输入; 是状态转移矩阵; 是控制矩阵。
LQR的目的是设计控制输入
其中:
是半正定矩阵(即 ),表示状态相关的代价; 是半正定矩阵(即 ),表示控制输入相关的代价。
基本思路
LQR问题的目标是最小化系统在状态空间和输入空间中的能量损耗。其核心思想是通过动态规划和Ballman最优化原理,找到能够最小化上述性能指标的
倒推求解Bellman方程
首先,我们从动态规划的思想入手,从最终状态往回推导。假设在第
(为什么长这个样子呢,是因为我们设计的代价函数就是考虑当前状态和输入的一个二次型代价函数,在某一时刻,两项合并就是一个二次型代价函数)
其中
为了使代价函数最优,控制律
第 步时的代价
在第
假设系统的状态方程
展开后得:
递推代价函数
代价函数
即:
将所有与
最优控制律
为了最小化代价函数
解的最优控制律
即:
其中
Riccati方程
将最优控制律
这就是离散时间黎卡笛方程。在求解LQR问题时,我们通过迭代该方程来找到最优矩阵
稳定状态下的解
当系统达到稳定状态时,矩阵
通过求解这个方程,我们可以得到举证
其中
整体流程
- 定义系统的状态方程和性能指标;
- 使用动态规划,从Bellman方程出发,递归得到最优控制律;
- 通过求解离散Ricatti方程,得到反馈矩阵
; - 在稳定状态下,控制律为
。
参考书籍和文献
- Anderson, B. D. O., & Moore, J. B. (2007).
Optimal Control: Linear Quadratic Methods. Dover Publications. - 《自动控制原理(第七版)》胡寿松
- 【最优控制】5_线性二次型调节器(LQR)详细数学推导