线性二次型问题
-
线性二次型问题:系统为线性系统,性能指标为状态变量与控制变量的二次型函数,这类系统的最优控制问题。
-
主要内容:最优状态调节、最优输出调节和最优跟踪,其中,最优输出调节问题和最优跟踪问题可以化为最优状态调节问题。
-
特点:
1)应用广泛,可应用于工作在小信号条件下的非线性系统;
2)控制规律是状态变量的线性函数。
3)具有良好的频域特性,可实现极点最优配置
一、线性二次型问题
问题描述:线性时变系统的动态方程为
x
˙
\dot{x}
x˙(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕) 𝒙(
t
0
t_0
t0)=
x
0
x_0
x0
𝒚(𝒕)=𝑪(𝒕)𝒙(𝒕) 其中,𝒙(𝑡)n维, 𝒖(𝑡)m维, y(𝑡)l维
假设控制向量𝒖(𝑡)不受约束 ,用𝒚_𝑙 (𝑡)表示期望输出,
则误差向量为𝒆(𝑡)=
y
l
y_l
yl(𝑡)−𝒚(t)
指标泛函:
J
=
1
2
e
T
(
t
f
)
S
e
(
t
f
)
+
1
2
∫
t
0
t
f
[
e
T
(
t
)
Q
(
t
)
+
u
T
(
t
)
R
(
t
)
u
(
t
)
]
d
t
J=\frac {1} {2}e^T(t_f)Se(t_f)+ \frac {1} {2}\int_{t_0}^{t_f} {[e^T(t)Q(t)+u^T(t)R(t)u(t)]} \,{\rm d}t
J=21eT(tf)Se(tf)+21∫t0tf[eT(t)Q(t)+uT(t)R(t)u(t)]dt
t
0
t_0
t0和
t
f
t_f
tf固定,求最优控制𝒖^∗ (𝒕),使性能指标有最小值。
此问题称线性二次型性能指标的最优控制问题
线性二次型问题的本质:
用不大的控制,来保持较小的误差,以达到能量和误差综合最优的目的。
线性二次型问题的三种重要情形:
x
˙
\dot{x}
x˙(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕)
𝒚(𝒕)=𝑪(𝒕)𝒙(𝒕)
𝒆(𝒕)=
y
l
y_l
yl (𝒕)−𝒚(𝒕)
1.状态调节器问题 𝑪(𝒕)=𝑰
y
l
y_l
yl(𝒕)=𝟎 𝒚(𝒕)=𝒙(𝒕)=−𝒆(𝒕)
J
=
1
2
x
T
(
t
f
)
F
x
(
t
f
)
+
1
2
∫
t
0
t
f
[
x
T
(
t
)
Q
(
t
)
x
(
t
)
+
u
T
(
t
)
R
(
t
)
u
(
t
)
]
d
t
J=\frac {1} {2}x^T(t_f)Fx(t_f)+ \frac {1} {2}\int_{t_0}^{t_f} {[x^T(t)Q(t)x(t)+u^T(t)R(t)u(t)]} \,{\rm d}t
J=21xT(tf)Fx(tf)+21∫t0tf[xT(t)Q(t)x(t)+uT(t)R(t)u(t)]dt
当系统受扰偏离平衡状态时,要求系统产生控制向量,使指标极小,即,使𝒙(𝒕)始终保持在平衡点附近。
2.输出调节器问题
y
l
y_l
yl(𝒕)=𝟎 𝒚(𝒕)=−𝒆(𝒕)
J
=
1
2
y
T
(
t
f
)
F
y
(
t
f
)
+
1
2
∫
t
0
t
f
[
y
T
(
t
)
Q
(
t
)
y
(
t
)
+
u
T
(
t
)
R
(
t
)
u
(
t
)
]
d
t
J=\frac {1} {2}y^T(t_f)Fy(t_f)+ \frac {1} {2}\int_{t_0}^{t_f} {[y^T(t)Q(t)y(t)+u^T(t)R(t)u(t)]} \,{\rm d}t
J=21yT(tf)Fy(tf)+21∫t0tf[yT(t)Q(t)y(t)+uT(t)R(t)u(t)]dt
当系统受扰偏离平衡状态时,要求系统产生控制向量,使指标极小,即,使系统输出𝒚(𝒕)始终保持在平衡点附近。
3.跟踪问题
y
l
≠
0
y_l\neq0
yl=0
e
(
t
)
=
y
l
(
t
)
−
y
(
t
)
e(t)=y_l(t)-y(t)
e(t)=yl(t)−y(t)
J
=
1
2
e
T
(
t
f
)
F
e
(
t
f
)
+
1
2
∫
t
0
t
f
[
e
T
(
t
)
Q
(
t
)
e
(
t
)
+
u
T
(
t
)
R
(
t
)
u
(
t
)
]
d
t
J=\frac {1} {2}e^T(t_f)Fe(t_f)+ \frac {1} {2}\int_{t_0}^{t_f} {[e^T(t)Q(t)e(t)+u^T(t)R(t)u(t)]} \,{\rm d}t
J=21eT(tf)Fe(tf)+21∫t0tf[eT(t)Q(t)e(t)+uT(t)R(t)u(t)]dt
使系统实际输出𝒚(𝒕)始终跟随𝒚_𝒍 (𝒕) 变化
二、状态调节器问题
应用举例:电网电压控制;温度控制;压力控制等。
目的:保持系统状态在平衡状态附近;(通常取“零状态”为平衡状态)
-
有限时间状态调节器
问题描述:设线性时变系统的状态方程为:
x ˙ \dot{x} x˙(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕),𝒙( t 0 t_0 t0)= x 0 x_0 x0
假设控制向量𝒖(𝒕)不受约束 ,求最优控制 u ∗ u^* u∗ (𝒕),使系统的二次型性能指标取极小值:
J = 1 2 e T ( t f ) F x ( t f ) + 1 2 ∫ t 0 t f [ e T ( t ) Q ( t ) x ( t ) + u ( t ) T R ( t ) u ( t ) ] d t J=\frac {1} {2}e^T(t_f)Fx(t_f)+ \frac {1} {2}\int_{t_0}^{t_f} {[e^T(t)Q(t)x(t)+u(t)^TR(t)u(t)]} \,{\rm d}t J=21eT(tf)Fx(tf)+21∫t0tf[eT(t)Q(t)x(t)+u(t)TR(t)u(t)]dt
权矩阵:𝑭= F T ≥ 0 F^T\geq0 FT≥0; 𝑸(𝒕)= Q T ( t ) ≥ 0 Q^T(t)\geq0 QT(t)≥0;𝑹(𝒕)= R T R^T RT (𝒕)>𝟎, t f t_f tf固定且 t f t_f tf≠∞。
物理意义:以较小的控制能量为代价,使状态保持在零值附近。
黎卡提方程
− 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 ) -\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) −P˙(t)=P(t)A(t)+AT(t)P(t)−P(t)B(t)R−1(t)BT(t)P(t)+Q(t)
边界条件 P ( t f ) = F P(t_f)=F P(tf)=F
最优轨线 x ∗ x^* x∗ (𝒕)是满足下列线性向量微分方程的解:
− x ˙ ( t ) = [ A ( t ) − B ( t ) R − 1 ( t ) B T ( t ) P ( t ) ] x ( t ) , x ( t 0 ) = x 0 -\dot{x}(t)=[A(t)-B(t)R^{-1}(t)B^T(t)P(t)]x(t),x(t_0)=x_0 −x˙(t)=[A(t)−B(t)R−1(t)BT(t)P(t)]x(t),x(t0)=x0
u ∗ ( t ) = − K ( t ) x = − R − 1 ( t ) B T ( t ) P ( t ) x ( t ) u^*(t)=-K(t)x=-R^{-1}(t)B^T(t)P(t)x(t) u∗(t)=−K(t)x=−R−1(t)BT(t)P(t)x(t) -
无限时间状态调节器
- 问题描述:设线性时变系统的状态方程为:
x ˙ \dot{x} x˙(𝒕)=𝑨(𝒕)𝒙(𝒕)+𝑩(𝒕)𝒖(𝒕) x ( t 0 ) = x 0 , t f = ∞ x(t_0)=x_0,t_f=\infty x(t0)=x0,tf=∞ 假设控制向量𝒖(𝒕)不受约束 ,求最优控制u^* (𝒕) ,使系统的性能指标取极小值:
J = 1 2 ∫ t 0 ∞ [ x T ( t ) Q ( t ) x ( t ) + u ( t ) T R ( t ) u ( t ) ] d t J=\frac {1} {2}\int_{t_0}^{\infty} {[x^T(t)Q(t)x(t)+u(t)^TR(t)u(t)]} \,{\rm d}t J=21∫t0∞[xT(t)Q(t)x(t)+u(t)TR(t)u(t)]dt
定理:对于无限时间时变状态调节器问题,若{𝑨(𝒕),𝑩(𝒕)}完全可控,则存在唯一的最优控制: u ∗ ( t ) = − R − 1 ( t ) B T ( t ) P ˉ ( t ) x u^*(t)=-R^{-1}(t)B^T(t)\bar{P}(t)x u∗(t)=−R−1(t)BT(t)Pˉ(t)x,
最优性能指标为: J ∗ ( t ) = 1 2 x ( t 0 ) T P ˉ ( t 0 ) x ( t 0 ) J^*(t)=\frac {1} {2}x(t_0)^T\bar{P}(t_0)x(t_0) J∗(t)=21x(t0)TPˉ(t0)x(t0)
P ˉ ( t ) = lim t f → ∞ P ( t ) \bar{P}(t)=\lim_{t_f \to \infty}P(t) Pˉ(t)=limtf→∞P(t),是对称的,非负的。
𝑷(𝒕)是如下黎卡提方程的唯一解,且𝐏( t f t_f tf)=𝟎:
− 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 ) -\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) −P˙(t)=P(t)A(t)+AT(t)P(t)−P(t)B(t)R−1(t)BT(t)P(t)+Q(t)
关于定理需要注意的问题:
1.要求系统完全能控。(保证最优解的存在)
2.F=0,人们所关心的总是系统在有限时间内的响应,不考虑终点指标;
3. P ˉ ( t ) \bar{P}(t) Pˉ(t)是时变的矩阵,最优控制律是时变的。
- 问题描述:设线性时变系统的状态方程为:
-
问题描述:设线性定常系统的状态方程为:
x ˙ \dot{x} x˙(𝒕)=𝑨𝒙(𝒕)+𝑩𝒖(𝒕) x ( t 0 ) = x 0 , t f = ∞ x(t_0)=x_0,t_f=\infty x(t0)=x0,tf=∞假设控制向量𝒖(𝒕)不受约束 ,求最优控制u^* (𝒕) ,使系统的性能指标取极小值:
J = 1 2 ∫ 0 ∞ [ x T ( t ) Q x ( t ) + u ( t ) T R u ( t ) ] d t J=\frac {1} {2}\int_{0}^{\infty} {[x^T(t)Qx(t)+u(t)^TRu(t)]} \,{\rm d}t J=21∫0∞[xT(t)Qx(t)+u(t)TRu(t)]dt
𝑸——非负定对称阵;𝑹——正定对称阵
定理:对于无限时间定常状态调节器问题,若对于任意矩阵𝑫有 D D T = Q DD^T=Q DDT=Q且 P ˉ \bar{P} Pˉ是如下黎卡提矩阵代数方程的解:
P ˉ A + A T P ˉ − P ˉ B R − 1 B T P ˉ + Q = 0 \bar{P}A+A^T\bar{P}-\bar{P}BR^{-1}B^T\bar{P}+Q=0 PˉA+ATPˉ−PˉBR−1BTPˉ+Q=0
则, {𝑨,𝑫}完全可观的充要条件是: P ˉ \bar{P} Pˉ是正定对称矩阵
定理:对于无限时间定常状态调节器问题,若{𝑨(𝒕),𝑩(𝒕)}完全可控, {𝑨,𝑫}完全可观,
D
D
T
=
Q
DD^T=Q
DDT=Q, 𝑫任意,则存在唯一的最优控制
u
∗
(
t
)
=
−
R
−
1
B
T
P
ˉ
x
u^*(t)=-R^{-1}B^T\bar{P}x
u∗(t)=−R−1BTPˉx
最优性能指标为: 𝑱^∗=𝟏/𝟐 〖𝒙_𝟎〗^𝑻 𝑷 ̅ (𝒕_𝟎)𝒙_𝟎,
P
ˉ
\bar{P}
Pˉ是正定对称矩阵,是黎卡提矩阵代数方程
P
ˉ
A
+
A
T
P
ˉ
−
P
ˉ
B
R
−
1
B
T
P
ˉ
+
Q
=
0
\bar{P}A+A^T\bar{P}-\bar{P}BR^{-1}B^T\bar{P}+Q=0
PˉA+ATPˉ−PˉBR−1BTPˉ+Q=0唯一的解。
最优轨线
x
∗
(
t
)
x^*(t)
x∗(t)是方程
x
˙
=
(
A
−
B
R
−
1
B
T
P
ˉ
)
x
\dot{x}=(A-BR^{-1}B^T\bar{P})x
x˙=(A−BR−1BTPˉ)x的解。
三、 MATLAB仿真
- 有限时间状态调节器
例
x ˙ = [ 0 1 0 0 ] x + [ 0 1 ] u \dot{x}=\begin{bmatrix} 0 & 1 \\ 0 & 0 \\ \end{bmatrix}x+\begin{bmatrix} 0 \\ 1 \\ \end{bmatrix}u x˙=[0010]x+[01]u,初始条件 x 1 ( 0 ) = 1 , x 2 ( 0 ) = 0 x_1(0)=1,x_2(0)=0 x1(0)=1,x2(0)=0
性能指标 J = 1 2 ∫ 0 t f [ x 1 2 ( t ) + u 2 ( t ) ] d t J=\frac {1} {2}\int_{0}^{t_f}[x{^2_1}(t)+u^2(t)]dt J=21∫0tf[x12(t)+u2(t)]dt
u ∗ ( t ) = − P 12 ( t ) x 1 ( t ) − P 12 ( t ) x 2 ( t ) = − x 1 ( t ) − 2 x 2 ( t ) u^*(t)=-P_{12}(t)x_1(t)-P_{12}(t)x_2(t)=-x_1(t)-\sqrt{2}x_2(t) u∗(t)=−P12(t)x1(t)−P12(t)x2(t)=−x1(t)−2x2(t)
A=[0 1;0 0];
B=[0;1];
C=eye(2); %单位阵函数
D=[0;0];
Q=diag([1 0]); %对角阵函数
R=1;
K=lqr(A,B,Q,R); %二次型状态调节器设计
initial(ss(A-B*K,B,C,D),[1,0]) %由初始状态引起的零输入响应
- 无限时间状态调节器
- 例
已知系统状态方程表达式为:
x ˙ = [ 0 1 0 0 0 1 − 3 − 5 − 5 ] x + [ 0 0 1 ] u \dot{x}=\begin{bmatrix} 0 & 1& 0 \\ 0 & 0 & 1\\ -3 & -5 & -5\\ \end{bmatrix}x+\begin{bmatrix} 0 \\ 0 \\ 1 \\ \end{bmatrix}u x˙=⎣⎡00−310−501−5⎦⎤x+⎣⎡001⎦⎤u, y = [ 1 0 0 ] y=\begin{bmatrix} 1 & 0& 0 \\ \end{bmatrix} y=[100]
系统二次型性能指标为: J = ∫ 0 ∞ [ x T ( t ) Q x ( t ) + u ( t ) T R u ( t ) ] d t J=\int_{0}^{\infty} {[x^T(t)Qx(t)+u(t)^TRu(t)]} \,{\rm d}t J=∫0∞[xT(t)Qx(t)+u(t)TRu(t)]dt
Q = [ 100 0 0 0 1 0 0 0 1 ] Q=\begin{bmatrix} 100 & 0& 0 \\ 0 & 1 & 0\\ 0 & 0 & 1\\ \end{bmatrix} Q=⎣⎡10000010001⎦⎤ R = [ 1 ] R=\begin{bmatrix} 1\\ \end{bmatrix} R=[1]
A=[0 1 0;0 0 1;-3 -5 -5];
B=[0;0;1];
C=[1 0 0];
D=0;
Q=[100 0 0;0 1 0;0 0 1];
R=1;
K=lqr(A,B,Q,R);
Ac=A-B*K;
Bc=B*K;
Cc=C;
Dc=D;
e=eig(Ac)
2. 例
已知系统状态方程表达式为:
x
˙
=
[
0
1
0
0
0
0
0
−
2
−
3
]
x
+
[
0
0
1
]
u
\dot{x}=\begin{bmatrix} 0 & 1& 0 \\ 0 & 0 & 0\\ 0 & -2 & -3\\ \end{bmatrix}x+\begin{bmatrix} 0 \\ 0 \\ 1 \\ \end{bmatrix}u
x˙=⎣⎡00010−200−3⎦⎤x+⎣⎡001⎦⎤u,
y
=
[
1
0
0
]
y=\begin{bmatrix} 1 & 0& 0 \\ \end{bmatrix}
y=[100],
采用输出反馈控制律𝒖(𝒕)=−𝑲𝒚(𝒕),系统二次型性能指标为:
J
=
∫
0
∞
[
y
T
(
t
)
Q
y
(
t
)
+
u
(
t
)
T
R
u
(
t
)
]
d
t
J=\int_{0}^{\infty} {[y^T(t)Qy(t)+u(t)^TRu(t)]} \,{\rm d}t
J=∫0∞[yT(t)Qy(t)+u(t)TRu(t)]dt
Q
=
[
100
]
Q=\begin{bmatrix} 100\\ \end{bmatrix}
Q=[100],
R
=
[
1
]
R=\begin{bmatrix} 1\\ \end{bmatrix}
R=[1];试求最优控制的反馈增益矩阵𝑲使性能指标达到最小值。
A=[0 1 0;0 0 1;0 -2 -3];
B=[0;0;1]; C=[1 0 0]; D=0;
Q=diag([100]);
R=1;
[K,P,r]=lqry(A,B,C,D,Q,R)
t=0:0.1:10;
figure(1);step(A-B*K,B,C,D,1,t)
figure(2);step(A,B,C,D,1,t)