《现代控制理论基础》第五章(讲义) 56.3二次型最优控制问题 现在我们来研究最优控制问题。已知系统方程为 Ax+ Bi 确定最优控制向量 l(1)=-Kx() (521) 的矩阵K,使得性能指标 (5.22 达到极小。式中Q是正定(或正半定) Hermite或实对称矩阵,R是正定 Hermite 或实或实对称矩阵。注意,式(5.22)右边的第二项是考虑到控制信号的能量损 耗而引进的。矩阵φ和R确定了误差和能量损耗的相对重要性。在此,假设控制 向量u(1)是不受约束的。 正如下面讲到的,由式(5.21)给出的线性控制律是最优控制律。所以,若 能确定矩阵K中的未知元素,使得性能指标达极小,则u()=-Kx()对任意初始 状态x(0)而言均是最优的。图5.6所示为该最优控制系统的结构方块图。 x= Ax +Bu 图5.6最优控制系统 现求解最优控制问题。将式(5.21)代入式(5.20),可得 x= Ax- bkx=(A- bk)x 在以下推导过程中,假设A-BK是稳定矩阵,A-BK的所有特征值均具有 负实部。 将式(5.21)代入(5.22),可得 J=("@x+x"K"RKx)dt (O+K RK)xdt 依照解参数最优化问题时的讨论,取
《现代控制理论基础》第五章(讲义) 1 5.6.3 二次型最优控制问题 现在我们来研究最优控制问题。已知系统方程为 x = Ax + Bu (5.20) 确定最优控制向量 u(t) = −Kx(t) (5.21) 的矩阵 K,使得性能指标 (5.22) 达到极小。式中 Q 是正定(或正半定)Hermite 或实对称矩阵,R 是正定 Hermite 或实或实对称矩阵。注意,式(5.22)右边的第二项是考虑到控制信号的能量损 耗而引进的。矩阵 Q 和 R 确定了误差和能量损耗的相对重要性。在此,假设控制 向量 u(t) 是不受约束的。 正如下面讲到的,由式(5.21)给出的线性控制律是最优控制律。所以,若 能确定矩阵 K 中的未知元素,使得性能指标达极小,则 u(t) = −Kx(t) 对任意初始 状态 x(0)而言均是最优的。图 5.6 所示为该最优控制系统的结构方块图。 图 5.6 最优控制系统 现求解最优控制问题。将式(5.21)代入式(5.20),可得 x = Ax − BKx = (A − BK)x 在以下推导过程中,假设 A − BK 是稳定矩阵, A − BK 的所有特征值均具有 负实部。 将式(5.21)代入(5.22),可得 = + = + 0 0 ( ) ( ) x Q K RK xdt J x Qx x K RKx dt H H H H H 依照解参数最优化问题时的讨论,取 = + 0 J (x Qx u Ru)dt H H
《现代控制理论基础》第五章(讲义) x(o+K RK)x=-(x" Px 式中的P是正定的 Hermite或实对称矩阵。于是 x"(O+K RK)x=-x Px=-x[(A-BK)"P+P(A-BK)x 比较上式两端,并注意到方程对任意x均应成立,这就要求 (A-BK)P+P(A-BK)=-0+K RK 根据 Lyapunov第二法可知,如果A-BK是稳定矩阵,则必存在一个满足式 (5.23)的正定矩阵P 因此,该方法由式(5.23)确定P的各元素,并检验其是否为正定的(注意, 这里可能不止一个矩阵P满足该方程。如果系统是稳定的,则总存在一个正定的 矩阵P满足该方程。这就意味着,如果我们解此方程并能找到一个正定矩阵P 该系统就是稳定的。满足该方程的其他矩阵P不是正定的,必须丢弃)。 性能指标可计算为 J=0x(+K"R)xd=-x"P=-x"()Px()+x"()P(O) 由于假设ABK的所有特征值均具有负实部,所以x(∞)→0。因此 J=x"(0)P2x(0) (5.24) 于是,性能指标J可根据初始条件x(0和P求得。 为求二次型最优控制问题的解,可按下列步骤操作:由于所设的A是正定 Hermite或实对称矩阵,可将其写为 R=TT 式中T是非奇异矩阵。于是,式(5.23)可写为 (A"-K BP+P(A-BK)+O+K T TK=0 上式也可写为 A"P+PA+ITK-(T)B" ITK-(T)B P]-PBR B"P+0=0 求J对K的极小值,即求下式对K的极小值 x"[TK-(T)-BPI"[TK-(T)B"PIx (见例5.21)。由于上面的表达式不为负值,所以只有当其为零,即当 TK=(T)B"P 时,才存在极小值。因此 K=T-TH) P=R-BP (5.25) 式(5.25)给出了最优矩阵K所以,当二次型最优控制问题的性能指标由式(5.22) 定义时,其最优控制律是线性的,并由 u(o)=-Kx(0=-R B"Px(o)
《现代控制理论基础》第五章(讲义) 2 ( ) (x Px) dt d x Q K RK x H H H + = − 式中的 P 是正定的 Hermite 或实对称矩阵。于是 x (Q K RK)x x Px x Px x [(A BK) P P(A BK)x] H H H H H H + = − − = − − + − 比较上式两端,并注意到方程对任意 x 均应成立,这就要求 (A BK) P P(A BK) (Q K RK) H H − + − = − + (5.23) 根据 Lyapunov 第二法可知,如果 A − BK 是稳定矩阵,则必存在一个满足式 (5.23)的正定矩阵 P。 因此,该方法由式(5.23)确定 P 的各元素,并检验其是否为正定的(注意, 这里可能不止一个矩阵 P 满足该方程。如果系统是稳定的,则总存在一个正定的 矩阵 P 满足该方程。这就意味着,如果我们解此方程并能找到一个正定矩阵 P, 该系统就是稳定的。满足该方程的其他矩阵 P 不是正定的,必须丢弃)。 性能指标可计算为 ( ) ( ) ( ) (0) (0) 0 0 J x Q K RK xdt x Px x Px x Px H H H H H = + = − = − + 由于假设 A-BK 的所有特征值均具有负实部,所以 x() → 0 。因此 J x (0)Px(0) H = (5.24) 于是,性能指标 J 可根据初始条件 x(0)和 P 求得。 为求二次型最优控制问题的解,可按下列步骤操作:由于所设的 A 是正定 Hermite 或实对称矩阵,可将其写为 R T T H = 式中 T 是非奇异矩阵。于是,式(5.23)可写为 (A − K B )P + P(A− BK) + Q + K T TK = 0 H H H H H 上式也可写为 [ ( ) ] [ ( ) ] 0 1 1 1 + + − − − + = − − − A P PA TK T B P TK T B P PBR B P Q H H H H H H H 求 J 对 K 的极小值,即求下式对 K 的极小值 x TK T B P TK T B P x H H H H H H [ ( ) ] [ ( ) ] −1 −1 − − (见例 5.21)。由于上面的表达式不为负值,所以只有当其为零,即当 TK T B P H 1 H ( ) − = 时,才存在极小值。因此 K T T B P R B P 1 H 1 H 1 H ( ) − − − = = (5.25) 式(5.25)给出了最优矩阵K。所以,当二次型最优控制问题的性能指标由式(5.22) 定义时,其最优控制律是线性的,并由 ( ) ( ) ( ) 1 u t Kx t R B Px t − H = − = −
《现代控制理论基础》第五章(讲义) 给出。式(5.25)中的矩阵P必须满足式(5.23),即满足下列退化方程 P+PA- P+0=0 式(5.26)称为退化矩阵黎卡提方程,其设计步骤如下: 1、求解退化矩阵黎卡提式(5.26),以求出矩阵P。如果存在正定矩阵P(某 些系统可能没有正定矩阵P),那么系统是稳定的,即矩阵A-BK是稳定矩阵。 2、将矩阵P代入式(5.25),求得的矩阵K就是最优矩阵。 例5.9是建立在这种方法基础上的设计例子。注意。如果矩阵A-BK是稳 定的,则此方法总能给出正确的结果。 确定最优反馈增益矩阵κ还有另一种方法,其设计步骤如下: 1、由作为K的函数的式(5.23)中确定矩阵P。 2、将矩阵P代入式(5.24),于是性能指标成为K的一个函数。 3、确定K的各元素,使得性能指标为极小。这可通过令∂J/∂k,等于零, 并解出k的最优值来实现J对K各元素k为极小。 这种设计方法的详细说明见例5.1和5.12。当元素k的数目较多时,该方 法很不便。 如果性能指标由输出向量的形式给出,而不是由状态向量的形式给出,即 则可用输出方程 来修正性能指标,使得J为 J=「(x"C"QCx+u"Ran)d (5.29) 且仍可用本节介绍的设计步骤来求最优矩阵K [例5.9]研究如图5.7所示的系统。假设控制信号为 l(1)=-kx(1) 试确定最优反馈增益矩阵A,使得下列性能指标达到极小 Ox +udt 式中 ≥0 由图5.7可看出,被控对象的状态方程为
《现代控制理论基础》第五章(讲义) 3 给出。式(5.25)中的矩阵 P 必须满足式(5.23),即满足下列退化方程 0 1 + − + = − A P PA PBR B P Q H H (5.26) 式(5.26)称为退化矩阵黎卡提方程,其设计步骤如下: 1、求解退化矩阵黎卡提式(5.26),以求出矩阵 P。如果存在正定矩阵 P(某 些系统可能没有正定矩阵 P),那么系统是稳定的,即矩阵 A − BK 是稳定矩阵。 2、将矩阵 P 代入式(5.25),求得的矩阵 K 就是最优矩阵。 例 5.9 是建立在这种方法基础上的设计例子。注意。如果矩阵 A − BK 是稳 定的,则此方法总能给出正确的结果。 确定最优反馈增益矩阵 K 还有另一种方法,其设计步骤如下: 1、由作为 K 的函数的式(5.23)中确定矩阵 P。 2、将矩阵 P 代入式(5.24),于是性能指标成为 K 的一个函数。 3、确定 K 的各元素,使得性能指标为极小。这可通过令 ij J / k 等于零, 并解出 ij k 的最优值来实现 J 对 K 各元素 ij k 为极小。 这种设计方法的详细说明见例 5.11 和 5.12。当元素 ij k 的数目较多时,该方 法很不便。 如果性能指标由输出向量的形式给出,而不是由状态向量的形式给出,即 = + 0 J ( y Q y u Ru)dt H H 则可用输出方程 y = Cx 来修正性能指标,使得 J 为 (5.29) 且仍可用本节介绍的设计步骤来求最优矩阵 K。 ------------------------------------------------------------------ [例 5.9] 研究如图 5.7 所示的系统。假设控制信号为 u(t) = −Kx(t) 试确定最优反馈增益矩阵 K,使得下列性能指标达到极小 J x Qx u dt T = + 0 2 ( ) 式中 , 0 0 1 0 = Q 由图 5.7 可看出,被控对象的状态方程为 x = Ax + Bu = + 0 J (x C QCx u Ru)dt H H H
《现代控制理论基础》第五章(讲义) 式中 A B Plant K 图5.7控制系统 以下说明退化矩阵黎卡提代数方程如何应用于最优控制系统的设计。求解 (5.26),将其重写为 A"P+PA-PBr-B P+O=0 注意到A为实矩阵,Q为实对称矩阵,P为实对称矩阵。因此,上式可写为 00P1P2.「P1P20 10P2P2LP2P200 P1P20 ]o 1] Pu pr P12 p P2P2」[04」[00 该方程可简化为 001.0P1p2P2P2 P1P2」10P2」LP2P2p2 由上式可得到下面3个方程 p2=0 P1-p12P2=0 +2p12-p2=0 将这3个方程联立,解出p1、P2、P2,且要求P为正定的,可得 P11P12 +2 P12P2 参照式(5.25),最优反馈增益矩阵K为 K=PB P
《现代控制理论基础》第五章(讲义) 4 式中 = = 1 0 , 0 0 0 1 A B 图 5.7 控制系统 以下说明退化矩阵黎卡提代数方程如何应用于最优控制系统的设计。求解 (5.26),将其重写为 0 1 + − + = − A P PA PBR B P Q H H 注意到 A 为实矩阵,Q 为实对称矩阵,P 为实对称矩阵。因此,上式可写为 = + − + 0 0 0 0 0 1 0 1 0 1 1 0 0 0 0 1 1 0 0 0 1 2 2 2 1 1 1 2 1 2 2 2 1 1 1 2 1 2 2 2 1 1 1 2 1 2 2 2 1 1 1 2 p p p p p p p p p p p p p p p p 该方程可简化为 = + − + 0 0 0 0 0 1 0 0 0 0 0 2 12 22 22 12 22 2 12 12 11 11 12 p p p p p p p p p p 由上式可得到下面 3 个方程 1 0 2 − p12 = p11 − p12 p22 = 0 2 0 2 + p12 − p22 = 将这 3 个方程联立,解出 11 p 、 12 p 、 22 p ,且要求 P 为正定的,可得 + + = = 1 2 2 1 12 22 11 12 p p p p P 参照式(5.25),最优反馈增益矩阵 K 为 K P B P −1 H =
《现代控制理论基础》第五章(讲义) [Io 1] Pn Pia =[P12P2 ly4+2] 因此,最优控制信号为 l=-Kx=-x1-√4+2x2 (5.28) 注意,由式(5.28)给出的控制律对任意初始状态在给定的性能指标下都能 得出最优结果。图5.8是该系统的方块图 对象 图5.8图5.7所示对象的最优控制 5.7二次型最优控制问题的 MATLAB解法 在 MATLAB中,命令 lgr(A, B,o,R) 可解连续时间的线性二次型调节器问题,并可解与其有关的黎卡提方程。该命令 可计算最优反馈增益矩阵K,并且产生使性能指标。 J=L(xOx+uRu ) dt 在约束方程 x= Ax+ Bi 条件下达到极小的反馈控制律 Kx 另一个命令 [K, P,E]=lqr(A, B, @ R) 也可计算相关的矩阵黎卡提方程
《现代控制理论基础》第五章(讲义) 5 [1 2] [ ] 1 0 1 12 22 12 22 11 12 = + = = p p p p p p 因此,最优控制信号为 1 2 2 u = −Kx = −x − + x (5.28) 注意,由式(5.28)给出的控制律对任意初始状态在给定的性能指标下都能 得出最优结果。图 5.8 是该系统的方块图。 图 5.8 图 5.7 所示对象的最优控制 ------------------------------------------------------------------ 5.7 二次型最优控制问题的 MATLAB 解法 在 MATLAB 中,命令 lqr(A,B,Q, R) 可解连续时间的线性二次型调节器问题,并可解与其有关的黎卡提方程。该命令 可计算最优反馈增益矩阵 K,并且产生使性能指标。 = + 0 J (x Qx u Ru)dt 在约束方程 x = Ax + Bu 条件下达到极小的反馈控制律 u = −Kx 另一个命令 K,P,E = lqr(A,B,Q,R) 也可计算相关的矩阵黎卡提方程
《现代控制理论基础》第五章(讲义) 0=PA+A P-PBRB P+O 的唯一正定解P。如果A-BK为稳定矩阵,则总存在这样的正定矩阵。利用这个 命令能求闭环极点或A-BK的特征值 对于某些系统,无论选择什么样的K,都不能使A-BK为稳定矩阵。在此情 况下。这个矩阵黎卡提方程不存在正定矩阵。对此情况,命令 K=lgr(A, B,0,R) K, P,E]=lar(A, B, @, R) 不能求解,详见 MATLAB Prgram5.1。 MATLAB Program 5.I Design of quadratic optimal regulator system- %*****Determination of feedback gain matrix K for quadratic %*****Enter state matrix A and control matrix B***** =-11;02] 9*****Enter matrices Q and R of the quadratic performance [100l R=[1] %*****To obtain optimal feedback gain matrix, K,enter the %following command***** lqr(A, B, Q, R) Warning: Matrix is singular to working precision
《现代控制理论基础》第五章(讲义) 6 PA A P PBRB P Q H H 0 = + − + 的唯一正定解 P。如果 A − BK 为稳定矩阵,则总存在这样的正定矩阵。利用这个 命令能求闭环极点或 A − BK 的特征值。 对于某些系统,无论选择什么样的 K,都不能使 A − BK 为稳定矩阵。在此情 况下。这个矩阵黎卡提方程不存在正定矩阵。对此情况,命令 K = lqr(A, B,Q, R) K,P,E = lqr(A,B,Q,R) 不能求解,详见 MATLAB Prgram 5.1。 MATLAB Program 5.1 %——Design of quadratic optimal regulator system—— %*****Determination of feedback gain matrix K for quadratic %optimal control***** %*****Enter state matrix A and control matrix B***** A=[-1 1;0 2] B=[1;0]; %*****Enter matrices Q and R of the quadratic performance %index***** Q=[1 0;0 1]; R=[1]; %*****To obtain optimal feedback gain matrix,K,enter the %following command***** K=lqr(A,B,Q,R) Warning:Matrix is singular to working precision. K= NaN NaN
《现代控制理论基础》第五章(讲义) If we enter the command [k, p,el=lqr(A, B, Q, r). then K P,E]=lqr(A, B, Q, R) Warning: Matrix is singular to working precision Nan nan -Inf -Inf Inf -Inf -2.0000 14142 例5.10]考虑由下式确定的系统 x 02x2」[0 证明:无论选择什么样矩阵κ,该系统都不可能通过状态反馈控制 u=-Kx 来稳定(注意,该系统是状态不可控的)。 定义 k1k2] 则 020 因此特征方程为
《现代控制理论基础》第五章(讲义) 7 %***** lf we enter the command [K,P,E]=lqr(A,B,Q,R).then***** [K,P,E]=lqr(A,B,Q,R) Warning;Matrix is singular to working precision. K= NaN NaN P= -lnf -lnf -lnf -lnf E= -2.0000 -1.4142 ------------------------------------------------------------------ [例 5.10] 考虑由下式确定的系统 u x x x x + − = 0 1 0 2 1 1 2 1 2 1 证明:无论选择什么样矩阵 K,该系统都不可能通过状态反馈控制 u = −Kx 来稳定(注意,该系统是状态不可控的)。 定义 1 2 K = k k 则 1 2 0 1 0 2 1 1 A BK k k − − − = − − − = 2 1 0 1 1 2 k k 因此特征方程为
《现代控制理论基础》第五章(讲义) sI-A+BK I k1-1+k2 (s+1+k1s-2)=0 闭环极点为 S 由于极点s=2在s的右半平面,所以无论选择什么样的矩阵A,该系统都是 不稳定的。因此,二次型最优控制方法不能用于该系统 假设在二次型性能指标中的Q和R为 10 R=[l] 并且写出 MATLAB Progam5.1。所得的 MATLAB解为 K=Nc 其中MaN表示“不是一个数”。每当二次型最优控制问题问题的解不存在时, MATLAB将显示矩阵K由MaW组成 [例5.11]考虑下式定义的系统 式中 B 性能指标J为 这里 (x'Ox +u Ru ) kt o-lo OH 假设采用下列控制 Kx 确定最优反馈增益矩阵K。 最优反馈增益矩阵K可通过求解下列关于正定矩阵P的黎卡提方程得到 A'P+PA-PBR-B'P+0=0 其结果为 将该矩阵P代人下列方程,即可求得最可求得最优矩阵K为
《现代控制理论基础》第五章(讲义) 8 ( 1 )( 2) 0 0 2 1 1 1 1 2 = + + − = − + + − + − + = s k s s s k k sI A BK 闭环极点为 s = −1− k1 , s = 2 由于极点 s = 2 在 s 的右半平面,所以无论选择什么样的矩阵 K,该系统都是 不稳定的。因此,二次型最优控制方法不能用于该系统。 假设在二次型性能指标中的 Q 和 R 为 , [1] 0 1 1 0 = Q = R 并且写出 MATLAB Progam 5.1。所得的 MATLAB 解为 K = NaN NaN 其中 NaN 表示“不是一个数”。每当二次型最优控制问题问题的解不存在时, MATLAB 将显示矩阵 K 由 NaN 组成。 ------------------------------------------------------------------ [例 5.11] 考虑下式定义的系统 x = Ax + Bu 式中 性能指标 J 为 这里 假设采用下列控制 u u = −Kx 确定最优反馈增益矩阵 K。 最优反馈增益矩阵 K 可通过求解下列关于正定矩阵 P 的黎卡提方程得到 ' ' 0 1 + − + = − A P PA PBR B P Q 其结果为 将该矩阵 P 代人下列方程,即可求得最可求得最优矩阵 K 为 = − = 1 0 , 0 1 0 1 A B + J = (x 'Qx u'Ru)kt 0 , [1] 0 1 1 0 = Q = R = 1 1 2 1 P
《现代控制理论基础》第五章(讲义) K=RBP [l10 因此,最优控制信号为 利用 MATLAB Program5.2也能求解该问题。 MATLAB Pro -Design of quadratic optimal regulator system %*****Determination of feedback gain matrix K for quadratic optimal control o***** Enter state matrix A and control matrix b***** B=01l o*****Enter matrices Q and R of the quadratic performance =[1001 R=[l] %The optimal feedbck gain matrix K(if such matrix K exists)can be obtained by entering the following command 1.0000 1.0000 [例5.12]考虑下列系统 Bu 式中 10 A=0 091,B=0
《现代控制理论基础》第五章(讲义) 9 K R B'P −1 = 因此,最优控制信号为 u = −Kx = −x − x 1 2 利用 MATLAB Program 5.2 也能求解该问题。 MATLAB Program 5.2 %——Design of quadratic optimal regulator system %*****Determination of feedback gain matrix K for quadratic %optimal control***** %*****Enter state matrix A and control matrix B***** A=[0 1;0 -1]; B=[0;1]; %*****Enter matrices Q and R of the quadratic performance %index***** Q=[1 0;0 1]; R=[1]; %The optimnal feedbck gain matrix K (if such matrix K % exists)can be obtained by entering the following command ***** K=lqr(A,B,Q,R) K= 1.0000 1.0000 ------------------------------------------------------------------ [例 5.12] 考虑下列系统 x = Ax + Bu 式中 = − − − = 1 0 0 35 27 9 0 0 1 0 1 0 A ,B [1 1] 1 1 2 1 [1][ 0 1] = =
《现代控制理论基础》第五章(讲义) 性能指标J为 J=I(x'Ox+u'Ru)dr 式中 Q=010R=[] 001 求黎卡提方程的正定矩阵R、最优反馈增益矩阵κ和矩阵所的特征值。 利用 MATLAB Program5.3,可求解该问题。 MATLAB Programs.3 %--------Design of quadratic optimal regulatorsystem %*****Determination of feedback gain matrix K for quadratic *** Enter state matrix A and control matrix b***** 00;1 %******Enter matrices Q and r of the quadratic performance %******The optimal feedback gain matrix K, solution P of Riccati %equation, and closed-loop poles( that is, the eigenvalues %of A-BK )can be obtained by entering the following K, P,Egr(A, B, Q, R) 0.0143 0.1107 0.0676 4.2625 2.4957 0.0143 2.4957 2.8150 0.1107 0.0143 0.1107 0.0676 -0.9859+1.7110 -1.9859-1.7110i [例5.13]考虑与例12.7中讨论的相同的系统。该系统的状态空间表达式为 Ax+ Bu 式中 010 A=001B=|0C=poqD=01
《现代控制理论基础》第五章(讲义) 10 性能指标 J 为 式中 求黎卡提方程的正定矩阵 R、最优反馈增益矩阵 K 和矩阵 A-BK 的特征值。 利用 MATLAB Program 5.3,可求解该问题。 MATLAB Program5.3 %--------Design of quadratic optimal regulatorsystem------- %*****Determination of feedback gain matrix K for quadratic *****Enter state matrix A and control matrix B***** A=[0 0;0 0 1;-35 -27 -9]; B-[0;0;1] %******Enter matrices Q and R of the quadratic performance %index ***** Q=[1 0 0;0 1 0;0 0 1]; R=[1]; %******The optimal feedback gain matrix K, solution P of Riccati %equation,and closed-loop poles(that is,the eigenvalues %of A-BK)can be obtained by entering the following %command***** [K,P,E]=[qr(A,B,Q,R)] K= 0.0143 0.1107 0.0676 P= 4.2625 2.4957 0.0143 2.4957 2.8150 0.1107 0.0143 0.1107 0.0676 E= -5.0958 -0.9859+1.7110I -1.9859-1.7110i ------------------------------------------------------------------ [例 5.13] 考虑与例 12.7 中讨论的相同的系统。该系统的状态空间表达式为 x = Ax + Bu y = Cx + Du 式中 , 1 0 0, [0] 1 0 0 , 0 2 3 0 0 1 0 1 0 = = = − − A = B C D J (x Qx + u Ru)dt = 0 , 1 0 0 1 0 1 0 1 0 0 = Q = R