【OC】线性二次型(LQR)性能指标最优控制(1)

开环控制与闭环控制

根据最大值原理求出的最优控制是时间的函数,是一种开环控制,在开环控制的过程中不允许有任何干扰,对环境的要求很高,所以在实际工程中更希望以一种闭环控制实现,即控制函数为时间和状态的函数,但是求解闭环控制是困难的,不过对于LQ系统是可以求解的.

LQR

设系统状态方程为
x ˙ ( t ) = A ( t ) x ( t ) + B ( t ) u ( t ) y ( t ) = C ( t ) x ( t ) (1) \begin{aligned} &\dot{x}(t)=A(t)x(t)+B(t)u(t)\\ &y(t)=C(t)x(t) \end{aligned}\tag{1} x˙(t)=A(t)x(t)+B(t)u(t)y(t)=C(t)x(t)(1)
其中 x ( t ) x(t) x(t) n n n维向量, u ( t ) u(t) u(t) r r r维向量, y ( t ) y(t) y(t) m m m维输出向量, A ( t ) , B ( t ) , C ( t ) A(t), B(t), C(t) A(t),B(t),C(t)分别为 n × n , n × r , n × m n\times n, n\times r, n\times m n×n,n×r,n×m矩阵,指标泛函为
J = 1 2 x T ( T ) S x ( T ) + 1 2 ∫ t 0 T [ x T ( t ) Q ( t ) x ( t ) + u T ( t ) R ( t ) u ( t ) ] d t (2) J=\frac{1}{2}x^T(T)Sx(T)+\frac{1}{2}\int_{t_0}^T[x^T(t)Q(t)x(t)+u^T(t)R(t)u(t)]dt\tag{2} J=21xT(T)Sx(T)+21t0T[xT(t)Q(t)x(t)+uT(t)R(t)u(t)]dt(2)
其中矩阵 S S S为半正定对称常数矩阵, Q ( t ) Q(t) Q(t)为半正定对称时变矩阵, R ( t ) R(t) R(t)为正定对称时变矩阵,控制 u ( x , t ) u(x, t) u(x,t)为综合控制函数,这种问题就是LQR问题.
指标物理意义分析

  • 积分项的第一项是对过程的要求,由于 Q ( t ) Q(t) Q(t)是半正定的,在控制过程中,要求每个分量越小越好,但是分量的重要性不同,需要使用 Q ( t ) Q(t) Q(t)进行调节.
  • 积分项第二项是对控制能力的要求,要求在整个控制过程中,使得能量消耗最小,考虑到如果不对 u ( t ) u(t) u(t)中每个分量都进行控制,那么 u ( t ) u(t) u(t)会出现很大的幅值,导致工程实现难度增大,并且计算中需要用到 R ( t ) R(t) R(t)的逆矩阵,所以设置 R ( t ) R(t) R(t)为正定矩阵.
  • 指标第一项是对终点状态的要求,对每个分量要求不同,使用矩阵 S S S进行加权.

在一般工程中, S , Q ( T ) S, Q(T) S,Q(T) R ( t ) R(t) R(t)通常使用对角阵.

状态调节器

状态调节器就是选择 u ( t ) u(t) u(t)或者 u ( x , t ) u(x, t) u(x,t)使得指标泛函 ( 2 ) (2) (2)具有最小值

末端自由

根据最小值原理构造哈密顿函数
H = 1 2 x T Q ( t ) x + 1 2 u T R ( t ) u + λ T A ( t ) x + λ T B ( t ) u H=\frac{1}{2}x^TQ(t)x+\frac{1}{2}u^TR(t)u+\lambda^TA(t)x+\lambda^TB(t)u H=21xTQ(t)x+21uTR(t)u+λTA(t)x+λTB(t)u
得到伴随方程及边界条件
{ λ ˙ ( t ) = − ∂ H ∂ x = − A T ( t ) λ − Q ( t ) x ( t ) λ ( T ) = S x ( T ) \left\{ \begin{aligned} &\dot{\lambda}(t)=-\frac{\partial H}{\partial x}=-A^T(t)\lambda-Q(t)x(t)\\ &\lambda(T)=Sx(T) \end{aligned} \right. λ˙(t)=xH=AT(t)λQ(t)x(t)λ(T)=Sx(T)
由于 u ( t ) u(t) u(t)不受限制,最优控制需要满足
∂ H ∂ u = R T ( t ) u ( t ) + B ( t ) T λ ( t ) = 0 \frac{\partial H}{\partial u}=R^T(t)u(t)+B(t)^T\lambda(t)=0 uH=RT(t)u(t)+B(t)Tλ(t)=0
R ( t ) R(t) R(t)为正定矩阵,可以解出
u ∗ ( t ) = − R − 1 ( t ) B ( t ) T λ ( t ) (3) u^*(t)=-R^{-1}(t)B(t)^T\lambda(t)\tag{3} u(t)=R1(t)B(t)Tλ(t)(3)
计算二阶条件,可知 u ∗ ( t ) u^*(t) u(t) H H H的极小值点
∂ 2 H ∂ u 2 = R ( t ) ≻ 0 \frac{\partial ^2H}{\partial u^2}=R(t)\succ0 u22H=R(t)0
( 3 ) (3) (3)代入正则方程得到
x ˙ ( t ) = A ( t ) x ( t ) − B ( t ) R − 1 ( t ) B T ( t ) λ ( t ) , x ( t 0 ) = x 0 λ ˙ ( t ) = − A T ( t ) λ ( t ) − Q ( t ) x ( t ) , λ ( T ) = S x ( T ) \begin{aligned} &\dot{x}(t)=A(t)x(t)-B(t)R^{-1}(t)B^T(t)\lambda(t), x(t_0)=x_0 \\ &\dot{\lambda}(t)=-A^T(t)\lambda(t)-Q(t)x(t), \lambda(T)=Sx(T) \end{aligned} x˙(t)=A(t)x(t)B(t)R1(t)BT(t)λ(t),x(t0)=x0λ˙(t)=AT(t)λ(t)Q(t)x(t),λ(T)=Sx(T)
可以发现方程组是关于 x ( t ) x(t) x(t) λ ( t ) \lambda(t) λ(t)的线性齐次方程,且 x ( t ) x(t) x(t) λ ( t ) \lambda(t) λ(t)的终点方程可以猜测 x ( t ) x(t) x(t) λ ( t ) \lambda(t) λ(t)的线性关系
λ ( t ) = P ( t ) x ( t ) (4) \lambda(t)=P(t)x(t)\tag{4} λ(t)=P(t)x(t)(4)
其中, P ( t ) P(t) P(t)为矩阵,将方程 ( 4 ) (4) (4) t t t求导得到
λ ˙ ( t ) = P ˙ ( t ) x ( t ) + P ( t ) x ˙ ( t ) = P ˙ ( t ) x ( t ) + P ( t ) ( A ( t ) x ( t ) − B ( t ) R − 1 ( t ) B T ( t ) λ ( t ) ) = λ ( t ) = P ( t ) x ( t ) ( P ˙ ( t ) + P ( t ) A ( t ) − P ( t ) B ( t ) R − 1 ( t ) B T ( t ) P ( t ) ) x ( t ) \begin{aligned} \dot{\lambda}(t)&=\dot{P}(t)x(t)+P(t)\dot{x}(t)\\ &=\dot{P}(t)x(t)+P(t)(A(t)x(t)-B(t)R^{-1}(t)B^T(t)\lambda(t))\\ &\xlongequal{\lambda(t)=P(t)x(t)} (\dot{P}(t)+P(t)A(t)-P(t)B(t)R^{-1}(t)B^T(t)P(t))x(t) \end{aligned} λ˙(t)=P˙(t)x(t)+P(t)x˙(t)=P˙(t)x(t)+P(t)(A(t)x(t)B(t)R1(t)BT(t)λ(t))λ(t)=P(t)x(t) (P˙(t)+P(t)A(t)P(t)B(t)R1(t)BT(t)P(t))x(t)
由正则方程中
λ ˙ ( t ) = − Q ( t ) x ( t ) − A T ( t ) λ ( t ) = ( − Q ( t ) − A T ( t ) P ( t ) ) x ( t ) \dot{\lambda}(t)=-Q(t)x(t)-A^T(t)\lambda(t)=(-Q(t)-A^T(t)P(t))x(t) λ˙(t)=Q(t)x(t)AT(t)λ(t)=(Q(t)AT(t)P(t))x(t)
进行系数对比,方程对所有 x ( t ) x(t) x(t)成立得到关系式
P ˙ ( t ) + P ( t ) A ( t ) + A T ( t ) P ( t ) − P ( t ) B ( t ) R − 1 ( t ) B T ( t ) P ( t ) + Q ( t ) = 0 (5) \dot{P}(t)+P(t)A(t)+A^T(t)P(t)-P(t)B(t)R^{-1}(t)B^T(t)P(t)+Q(t)=0\tag{5} P˙(t)+P(t)A(t)+AT(t)P(t)P(t)B(t)R1(t)BT(t)P(t)+Q(t)=0(5)
方程 ( 5 ) (5) (5)是关于矩阵 P ( t ) P(t) P(t)的一阶非线性常微分方程,即Riccati方程.
可以得到Riccati方程的边界条件为
P ( T ) = S P(T)=S P(T)=S
可以证明,当矩阵 A ( t ) , B ( t ) , Q ( t ) , R ( t ) A(t), B(t), Q(t), R(t) A(t),B(t),Q(t),R(t)的元素在 [ t 0 , T ] [t_0, T] [t0,T]上都是时间 t t t的分段连续函数时,方程 ( 5 ) (5) (5)存在满足边界条件的唯一解.
最优控制可以表示为
u ∗ ( x , t ) = − R − 1 ( t ) B T ( t ) P ( t ) x u^*(x, t)=-R^{-1}(t)B^T(t)P(t)x u(x,t)=R1(t)BT(t)P(t)x

K ( t ) = R − 1 ( t ) B T ( t ) P ( t ) K(t)=R^{-1}(t)B^T(t)P(t) K(t)=R1(t)BT(t)P(t)
得到
u ∗ ( x , t ) = − K ( t ) x u^*(x, t)=-K(t)x u(x,t)=K(t)x
即最优控制是状态变量的线性函数,借助状态变量的线性反馈可以实现闭环最优控制. 由此将最优控制求解问题转为Riccati微分方程求解问题.
转置Riccati方程,得到
P ˙ T ( t ) + A T ( t ) P T ( t ) + P T ( t ) A ( t ) − P T ( t ) B ( t ) ( R − 1 ( t ) ) T P ( t ) + Q T ( t ) = 0 \dot{P}^T(t)+A^T(t)P^T(t)+P^T(t)A(t)-P^T(t)B(t)(R^{-1}(t))^TP(t)+Q^T(t)=0 P˙T(t)+AT(t)PT(t)+PT(t)A(t)PT(t)B(t)(R1(t))TP(t)+QT(t)=0
由于 R ( t ) R(t) R(t) Q ( t ) Q(t) Q(t)均为对称矩阵, R T ( t ) = R ( t ) , Q T ( t ) = Q ( t ) R^T(t)=R(t), Q^T(t)=Q(t) RT(t)=R(t),QT(t)=Q(t),边界条件为
P ( t ) = S T = S P^(t)=S^T=S P(t)=ST=S
所以 P T ( t ) P^T(t) PT(t)也满足Riccati方程,即 P ( t ) P(t) P(t)为对称,包含 n ( n − 1 ) 2 \frac{n(n-1)}{2} 2n(n1)个未知数.
得到最优性能指标为
J ∗ = 1 2 x T ( t 0 ) P ( t 0 ) x ( t 0 ) J^*=\frac{1}{2}x^T(t_0)P(t_0)x(t_0) J=21xT(t0)P(t0)x(t0)
证明 P ( t ) P(t) P(t)是半正定的,由上述方程可知
J ∗ = 1 2 x T ( t 0 ) P ( t 0 ) x ( t 0 ) = 1 2 x T ( T ) S x ( T ) + 1 2 ∫ t 0 T ( x T Q x + u T R u ) d t J^*=\frac{1}{2}x^T(t_0)P(t_0)x(t_0)=\frac{1}{2}x^T(T)Sx(T)+\frac{1}{2}\int_{t_0}^T(x^TQx+u^TRu)dt J=21xT(t0)P(t0)x(t0)=21xT(T)Sx(T)+21t0T(xTQx+uTRu)dt
因为 S , Q ( t ) , R ( t ) S, Q(t), R(t) S,Q(t),R(t)的半正定和正定的性质,可以知道 J ∗ ≥ 0 J^*\geq 0 J0.

案例

设一阶动态系统状态方程和初始条件分别为
x ˙ = a x + u x ( 0 ) = 1 \begin{aligned} &\dot{x}=ax+u\\ &x(0)=1 \end{aligned} x˙=ax+ux(0)=1
性能指标泛函为
J = 1 2 s x 2 ( T ) + 1 2 ∫ t 0 T ( q x 2 ( t ) + r u 2 ( t ) ) d t J=\frac{1}{2}sx^2(T)+\frac{1}{2}\int_{t_0}^T(qx^2(t)+ru^2(t))dt J=21sx2(T)+21t0T(qx2(t)+ru2(t))dt
求使 J J J最小的 u u u.
解析
根据上述推导可以得到最优控制 u ∗ u^* u和Riccati方程和边界条件为
u ∗ = − 1 r p ( t ) x p ˙ ( t ) = − 2 a p ( t ) + 1 r p 2 ( t ) − q p ( T ) = s \begin{aligned} &u^*=-\frac{1}{r}p(t)x\\ &\dot{p}(t)=-2ap(t)+\frac{1}{r}p^2(t)-q\\ &p(T)=s \end{aligned} u=r1p(t)xp˙(t)=2ap(t)+r1p2(t)qp(T)=s
其中Riccati方程可以通过移项后两边积分得到
∫ p ( t ) p ( T ) d p 1 r p 2 − 2 a p − q = ∫ t T d τ \int_{p(t)}^{p(T)}\frac{dp}{\frac{1}{r}p^2-2ap-q}=\int_t^Td\tau p(t)p(T)r1p22apqdp=tTdτ
求解得到
p ( t ) = r ( β + α ) + ( β − α ) s / r − α − β s / r − α − β e 2 b ( t − T ) 1 − s / r − α − β s / r − α + β e 2 b ( t − T ) p(t)=r\frac{(\beta+\alpha)+(\beta-\alpha)\frac{s/r-\alpha-\beta}{s/r-\alpha-\beta}e^{2b(t-T)}}{1-\frac{s/r-\alpha-\beta}{s/r-\alpha+\beta}e^{2b(t-T)}} p(t)=r1s/rα+βs/rαβe2b(tT)(β+α)+(βα)s/rαβs/rαβe2b(tT)
其中 β = q r + a 2 \beta=\sqrt{\frac{q}{r}+a^2} β=rq+a2 ,最优轨线微分方程为
x ˙ ( t ) = ( a − 1 r p ( t ) ) x ( t ) x ( 0 ) = 1 \dot{x}(t)=(a-\frac{1}{r}p(t))x(t)\\ x(0)=1 x˙(t)=(ar1p(t))x(t)x(0)=1
解之得
x ( t ) = e ∫ 0 t ( a − p ( t ) / r ) d τ x(t)=e^{\int_0^t(a-p(t)/r)d\tau} x(t)=e0t(ap(t)/r)dτ

参考资料

现代控制理论(第二版) 清华大学出版社 张嗣瀛 高立群
State Space part4: What is LQR control
最优控制 LQR控制器

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Quant0xff

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值