第10章 广义预测控制
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(10.1.5)
( z −1 ) = E j ( z −1 ) B ( z −1 ) 。结合式(10.1.3)可得 j
B ( z −1 ) G j ( z −1 ) = [1 − z − j F j ( z −1 )] (10.1.6) −1 A( z )∆ −1 因此,多项式 Gj (z ) 中前 j 项的系数正是对象阶跃响应前项的采样值,记做 g1 ,…,
此外还可得E j ( z
)
系数递推公式为
E j +1 ( z −1 ) = E j ( z −1 ) + e j +1, j z − j = E j ( z −1 ) + f j ,0 z − j
当
j = 1 时,方程式(10.1.3)为
ɶ 1 = E1 ( z −1 ) A( z −1 ) + z −1 F1 ( z −1 )
两式相减可得
A( z −1 )∆[ E j +1 ( z −1 ) − E j ( z −1 )] + z − j [ z −1 F j +1 ( z −1 ) − F j ( z −1 )] = 0
10.1.2 丢番图方程的解法
记
− n +1 ɶ ɶ ɶ ɶ A( z −1 ) = A( z −1 )∆ = 1 + a1 z −1 + ⋯ + ana z − na + ana +1 z ( a )
首先,根据式(10.1.3)可写出
E j ( z −1 ) 、 Fj ( z−1 ) 。对于不同
1 = E j ( z −1 ) A( z −1 )∆ + z − j F j ( z −1 )
1 = E j +1 ( z −1 ) A( z −1 )∆ + z − ( j +1) F j +1 ( z −1 )
H j (z−1 ) = hj,1z−1 + hj,2 z−2 +⋯+ hj,nb z−nb
则由式(10.1.4)和式(10.1.5)可以得到
ɶ y (k + j | k ) = G j ( z −1 )∆u (k + j − 1| k ) + H j ( z −1 )∆u (k ) + Fj ( z −1 ) y(k )
10.1.1 预测模型
可得
[1 − z − j F j ( z −1 )] y (k + j ) = E j ( z −1 ) B ( z −1 )∆u (k + j − 1) + E j ( z −1 )ξ (k + j ) 将左边展开移相,得到 j 步后的输出值
y (k + j ) = E j ( z −1 ) B ( z −1 )∆u (k + j − 1) + E j ( z −1 )ξ (k + j ) + F j ( z −1 ) y (k )
10.1.2 丢番图方程的解法
其中
f j +1 = f j +1,0 ,⋯, f j +1,na
1 − a1 a1 − a2 ɶ ⋮ A= ana −1 − ana a na
−1
(
)
T
,
f j = f j ,0 ,⋯, f j , na
(
)
T
1 0 ⋯ 0 0 1 ⋱ ⋮ ⋮ ⋱ ⋱ 0 0 ⋯ 0 1 0 ⋯ 0 0
C ( z −1 )ξ (k ) A( z −1 ) y (k ) = B( z −1 )u (k − 1) + ∆
式中
(10.1.1)
A( z −1 ) = 1 + a1 z −1 + ⋯ + ana z − na ,
B ( z −1 ) = b0 + b1 z −1 + ⋯ + bnb z − nb ,
(10.1.9)
ɶ ɶ ɶ 等式(10.1.9)恒成立的一个必要条件是: ( z −1 ) E ( z −1 ) 中所有阶次小于 的项为零。由于 A( z −1 ) A
j
的首项系数为1,很容易得出结论:使式(10.1.9)恒成立的必要条件是
ɶ E ( z −1 ) = 0
(10.1.10)
10.1.2 丢番图方程的解法
= 1 + (a1 − 1) z −1 + ⋯ + (ana − ana −1 ) z − na − ana z
则可得
− ( na +1)
ɶ E j +1 ( z −1 ) − E j ( z −1 ) = E ( z −1 ) + e j +1, j z − j
ɶ ɶ ɶ A( z −1 ) E ( z −1 ) + z − j [ z −1 F j +1 ( z −1 ) − F j ( z −1 ) + A( z −1 )e j +1, j ] = 0
进而,使式(10.1.9)成立的充要条件是式(10.1.10)和式(10.1.11)成立:
ɶ F j +1 ( z −1 ) = z[ F j ( z −1 ) − A( z −1 )e j +1, j ]
将式(10.1.11)等式两边各相同阶次项的系数逐一比较,得到
(10.1.11)
e j +1, j = f j ,0
(10.1.7) (10.1.8)
y (k + j | k ) = y (k + j | k ) + E j ( z −1 )ξ (k + j )
出信息及未来的输入值,就可以预测对象未来的输出。
式(10.1.4)、式(10.1.5)、式(10.1.7)和式(10.1.8)都可作为GPC的预测模型。这样, 根据已知的输入输
由式(10.1.10)知道:
Gj (z−1) =Ej (z−1)Bz−1) =g1 +g2z−1 +⋯ gj z−( j−1) +z−( j−1)Hj (z−1) ( +
故有
g j ,i = gi +1 (i < j )
10.1.3 滚动优化
在GPC中,
k
时刻的优化性能指标具有以下形式:
Nu N2 2 2 (10.1.13) J (k) = E ∑[ y(k + j | k) − ys (k + j)] + ∑λ( j)[ ∆u(k + j −1| k)] j =N1 j =1 E{ 其中, i} 表示取数学期望;y s 为对象输出的期望值; 1 和 N 2 分别为优化时域的起始与终止时刻; N
在式(10.1.1)两端乘以
E j ( z −1 )∆z j
,得
Ej (z−1 ) A(z−1 )∆y(k + j) = Ej (z−1 )B(z−1 )∆u(k + j −1) + Ej (z−1 )ξ (k + j)
由丢番图方程式(10.1.3)推得
E j ( z −1 ) A( z −1 ) ∆ = 1 − z − j F j ( z −1 )
1来自百度文库.1.2 丢番图方程的解法
故应取 E1 ( z
−1
ɶ ) = 1 、 1 ( z −1 ) = z[1 − A( z −1 )] F
(10.1.12)来递推计算:
为E
F ( z −1 ) 、 j ( z −1 ) 初值。这样, j +1 (z−1 ) 、 E j
Fj +1 ( z −1 )便可按式
E 其中, j ( z
−1
(10.1.3)
)、 j ( z −1 )是由 A(z−1 ) 和预测长度 F
j
唯一确定的多项式,表达为
− ( j −1)
E j ( z −1 ) = e j ,0 + e j ,1 z −1 + ⋯ + e j , j −1 z
Fj ( z −1 ) = f j ,0 + f j ,1 z −1 + ⋯ + f j , na z − na
第 10 章 广义预测控制
10.1 算法原理 10.1.1 预测模型 10.1.2 丢番图方程的解法 10.1.3 滚动优化 10.1.4 在线辨识与校正
10.1
算法原理
10.1.1 预测模型
在GPC中,采用了最小方差控制中所用的受控自回归积分滑动平均(Controlled AutoRegressive Integrated Moving Average, CARIMA)模型来描述受到随机干扰的对象。 考虑如下SISO(单入单出)CARIMA模型
Τ f 0 = (1, 0,⋯ ,0 ) −1 −1 −j E j +1 ( z ) = E j ( z ) + f j ,0 z , E0 = 0
ɶ f j +1 = Afi ,
(10.1.12)
e j ,i , i < j 的值与 j 没有关系,故可简记为 ei ≙ e j ,i , i < j 。 考虑第二个丢番图方程。由式(10.1.6)知道, (z ) 的前 j 项和 j 没有关系; j (z )的前 j G −1 Gj −1 项的系数正是对象单位阶跃响应前 j 项的采样值,记做 g1,⋯, g j 。这样,因
−1
−1
z
多项 式 B( z
) 的若干首项元素可以是零,以表示对象相应的时滞数。例如,对有 q 拍时滞的系统, b0 ~ bq −1 = 0 ,nb ≥ q 。(不能都为零) 为了突出方法原理,这里假设 C ( z −1 ) = 1 。这样,式(10.1.1)实际上用脉冲传递函数给出了对
−1
象的描述,即由输入
10.1.2 丢番图方程的解法
为了由式(10.1.4)或式(10.1.5)预测未来输出,必须首先知道 的
j ∈ {1, 2,⋯} ,这相当于并行地求解一组丢番图方程式(10.1.3),其计算量是很大的。为此, Clarke给出了一个 E ( z −1 )、 ( z −1 ) 的递推算法。 Fj j
10.1.1 预测模型
由于在时刻未来的噪声 ξ ( k 得到:
+ i ), i ∈ {1,⋯ , j}
都是未知的,所以对最合适的预测值可由下式
y (k + j | k ) = E j ( z −1 ) B( z −1 )∆u (k + j − 1| k ) + Fj ( z −1 ) y(k )
在式(10.1.5)中,记 G
u 到输出 y 间的脉冲传递函数为
(10.1.2)
的预测值,首先考虑下述丢番图
z −1 B ( z −1 ) G ( z −1 ) = A( z −1 ) 为了利用模型式(10.1.1)导出 j 步后输出 y (k + j | k )
(Diophantine)方程:
10.1.1 预测模型
1 = E j ( z −1 ) A( z −1 )∆ + z − j F j ( z −1 )
gj 。
再引入另一丢番图方程:
ɶ G j ( z −1 ) = E j ( z −1 ) B ( z −1 ) = G j ( z −1 ) + z − ( j −1) H j ( z −1 )
10.1.1 预测模型
其中
− j −1 ɶ G j ( z −1 ) = g j ,0 + g j ,1 z −1 + ⋯ + g j , j −1 z ( )
有关; j ( z F
−1
与
{u (k + j − 1| k ), u (k + j − 2|k ),⋯}
有关;
) y (k )
与
{ y (k ), y (k − 1),⋯}
E j (z−1 )ξ (k + j) 与 {ξ (k + j ), ,ξ (k + 2), ξ (k + 1)} 有关。 ⋯
C ( z −1 ) = c0 + c1 z −1 + ⋯ + cnc z − nc ,
deg A( z −1 ) = na
deg B( z −1 ) = nb
deg C ( z −1 ) = nc
10.1.1 预测模型
z 式中,z −1 是后移算子,表示后退一个采样周期的相应的量,即 z y (k ) = y (k − 1) , u (k ) = u (k − 1); ∆ = 1 − z −1 为差分算子,{ξ (k )}是均值为零的白噪声序列。A 、B 、C 都是 −1的多项式,其中
因此可以写出
k+ j
时刻的输出预测值为:
y (k + j | k ) = E j ( z −1 ) B ( z −1 )∆u ( k + j − 1| k ) + F j ( z −1 ) y (k ) + E j ( z −1 )ξ (k + j )
(10.1.4)
注意到 E j ( z
−1
F ) 、 j ( z−1 ) 的形式,可以知道: E j ( z −1 ) B( z −1 )∆u(k + j − 1| k )
ɶ ɶ f j +1,i = f j,i+1 − ai+1ej +1, j = f j,i +1 − ai+1 f j,0
i ∈{0,⋯, na −1}
ɶ ɶ f j +1, na = −ana +1e j +1, j = −ana +1 f j ,0
这一系数的递推关系亦可用矢量形式记为
ɶ f j +1 = Af j