LQR控制器(控制器的功能是什么)

LQR控制器是常见的最优控制器,它的主要特点是将控制量加入到了成本函数中。对于线性系统:x˙=Ax+Bu\dotx=Ax+Bux˙=Ax+Bu设计控制器u=−Kxu=-Kxu=−Kx使得J=12∫0∞xTQx+uTRu dtJ=\frac{1}{2}\int_0^\inftyx^TQx+u^TRu\,dtJ=21​∫0∞​xTQx+uTRudt最小。其中,xTQxx^TQxxTQx是状态部分,uTRuu^TRuuTRu是控制部分。为了求解K,需要引入Riccati微分方程:P

大家好,又见面了,我是你们的朋友全栈君。

LQR控制器是常见的最优控制器,它的主要特点是将控制量加入到了成本函数中。
对于线性系统:
x ˙ = A x + B u \dot x = Ax+Bu x˙=Ax+Bu
设计控制器 u = − K x u = -Kx u=Kx使得
J = 1 2 ∫ 0 ∞ x T Q x + u T R u   d t J = \frac{1}{2}\int_0^\infty x^TQx+u^TRu \,dt J=210xTQx+uTRudt
最小。其中, x T Q x x^TQx xTQx是状态部分, u T R u u^TRu uTRu是控制部分。

为了求解K,需要引入Riccati微分方程:
P A + A T P − P B R − 1 B T P + Q = 0 PA+A^TP-PBR^{-1}B^TP+Q=0 PA+ATPPBR1BTP+Q=0
由上式获得P后, K = R − 1 B T P K=R^{-1}B^TP K=R1BTP
最终, J = 1 2 x ( 0 ) T P x ( 0 ) J = \frac{1}{2}x_{(0)}^TPx_{(0)} J=21x(0)TPx(0)
参考:
https://blog.csdn.net/heyijia0327/article/details/39270597
https://zhuanlan.zhihu.com/p/87070103

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126056.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号