1
第十二章 预测控制
2
12.1预测控制基础
? 模型预测控制发展背景
? 特点
? 基本原理
3
模型预测控制的发展背景 (1)
?现代控制理论及应用 的发展与特点
– 要求
? 精确的模型
? 最优的性能指标
? 系统的设计方法
– 应用
? 航天、航空
? 军事等领域
4
模型预测控制的发展背景 (2)
? 工业过程的特点
– 多变量、非线性、时变性、强耦合,不确定
性
? 工业过程对控制的要求
– 高质量的控制性能
– 对模型要求不高
– 实现方便
5
预测控制的特点 ( 1)
? 建模方便,不需要深入了解过程内部机理
? 非最小化描述的离散卷积和模型,有利于提高
系统的鲁棒性
? 滚动的优化策略,较好的动态控制效果
? 不增加理论困难,可推广到有约束条件、大纯
滞后、非最小相位及非线性等过程
? 是一种 计算机优化控制算法
6
预测控制的特点 ( 2)
? 对模型要求不高
? 鲁棒性可调
? 可处理约束 (操作变量 MV、被控变量 CV)
? 可处理, 方,,, 瘦,,, 胖,,进行自动
转换
? 可实现多目标优化(包括经济指标)
? 可处理特殊系统:非最小相位系统、伪积分
系统、零增益系统
7
目前预测控制的发展方向
? 多变量预测控制系统的稳定性、鲁棒性
– 线性系统、自适应预测 —理论性较强
? 非线性预测控制系统
– 内部模型用神经网络( ANN)描述
? 针对预测控制的特点开展研究
– 国内外先进控制软件包开发所采用
8
预测控制的基本原理
?1978年,J.Richalet等就提出了预测控制算
法的三要素,
– 内部 (预测 )模型、参考轨迹、控制算法
? 现在一般则更清楚地表述为,
– 内部 (预测 )模型、滚动优化、反馈控制
9
预测模型 (内部模型 )( 1)
?预测模型的功能
根据被控对象的历史信息和未来输
入,预测系统未来响应 。
?预测模型形式
– 参数模型:如微分方程、差分方程
– 非参数模型:如脉冲响应、阶跃响应
10
预测模型 (内部模型 )( 2)
? 基于模型的预测示意图
2
y
u
1
4
3
未来 过去
k 时刻 1— 控制策略 Ⅰ
2— 控制策略 Ⅱ
3— 对应于控制 策略 Ⅰ 的输出
4— 对应于控制策略 Ⅱ 的输出
11
滚动优化 (在线优化) (1)
?控制目的
– 通过某一性能指标的最优,确定未来的控制作
用
?优化过程
?随时间推移在线优化,反复进行
?每一步实现的是静态优化
?全局看却是动态优化
12
滚动优化 (在线优化) (2)
? 滚动优化示意图
yr
yr
y
k时刻优化
2
1 3
y
k+1时刻优化
2
1
3
k+1 k
t/T
1─参考轨迹 yr (虚线 )
2─最优预测输出 y(实线 )
3─最优控制作用 u
13
反馈校正 (1)
? 每到一个新的采样时刻,都要通过 实际测到
的输出 信息对基于模型的 预测输出 进行修正
,然后再进行新的优化。不断根据系统的实
际输出对预测输出值作出修正使 滚动优化不
但基于模型,而且利用了反馈信息,构成闭
环优化。
14
反馈校正 (误差校正 )(2)
? 误差校正示意图
y
u
k k+1
4
1
2
3
1─k时刻的预测输出
2─k+1时刻实际输出
3─预测误差
4─k+1时刻校正后的预测输出
t/T
15
12.2 模型算法控制 (MAC)( 1)
? MAC的 预测模型,系统的 单位脉冲响应 如图
所示,可写为 ? ?
1kugy TMM ???
g2
N 2 1 0
t/T
1 g1
y
gN
系统的离散脉冲响应示意图
16
模型算法控制 (MAC)( 2)
? 参考轨迹与最优化示意图
w
y(t)
t/T k+P k+1 k
u(t)
yP(t)
yr(t)
未来 过去
17
模型算法控制 (MAC)( 3)
? 闭环预测 ---相当于 DMC中的误差校正
? 滚动优化 和最优控制算法
yr
w
参考轨迹模型
yr(k+i)
优化算法
minJP(k) 对象
模型
ym(k+i)
预测
yp(k+i)
yP
ym
e
y u
模型算法控制原理示意图
18
12.3 动态矩阵控制 (DMC)
? 基于被控对象的 单位阶跃响应
– 适用于 渐近稳定的 线性对象
即,设一个系统的离散采样数据 {a1,a2, …,
aN} 则有限个采样周期后,满足
)(?? aa N
19
动态矩阵控制 (DMC)
?DMC算法中的模型参数
– 有限集合 aT={a1,a2, …,aN} 中的参数可完全
描述系统的动态特性 N称为建模时域 。
?系统的渐近稳定性
– 保证模型可用有限的阶跃响应描述
?系统的线性性
– 则保证了可用线性系统的迭加性等
20
DMC的预测模型 (1)
? 系统的单位阶跃采样数据示意图
模型截断 y
0
1 2 3
a3 a2 a1
N N-1
aN aN-1
t/T
21
DMC的预测模型 (2)
如 P20图,t=kT时刻预测未来 N个时刻
? 无控制作用 u(k)的预测输出为
? 考虑 有控制作用 ? u(k)时的预测输出为
? ? ? ? ? ?? ?TkNkykkykky /?/2?/1?? 0000N ???? ?y
? ? ? ? ? ?? ? Ty kNkykkykky /?/2?/1?? 1111N ???? ?
? ? ? ? ? ?kukk ???? ayy N0N1 ??
? ?TN21 aaaa ??
22
根据输入控制增量预测输出的示意图
k+1 k+2 k+3
aP-M+1Δu(k+M-1)
a1Δu(k+1)
k+P
t/T
a1Δu(k) a
2Δu(k) a3Δu(k)
a2Δu(k+1)
a1Δu(k+2) aP-1Δu(k+1)
aPΔu(k)
? ?kky /1?0 ? ? ?kky /2?0 ? ? ?kky /3?0 ? ? ?kyp0?
? ?kkyM /1? ?
? ?kkyM /2? ?
? ?kky M /2? ?
? ?kyPM?
23
DMC的预测模型 (3)
?M 个连续的控制增量 ? u(k),? u(k+1),…
? u(k+M-1)作用下,系统在未来 P时刻的预测
输出
?A称为 DMC的 动态矩阵, P是 滚动优化时域长度
,M是 控制时域长度 。
? ? ? ? ? ?kukk M???? Ayy P0PM ??
? ? ? ? ? ? ? ?? ? TΔ u 11 ??????? MkukukukM ?
24
DMC的滚动优化 (1)
? 滚动优化的性能指标
– 通过优化指标,确定出未来 M 个控制增量,使未来 P
个输出预测值尽可能地接近期望值 w如 P24页图如示。
– 不同采样时刻,优化性能指标不同,但都具有同样的
形式,且 优化时域随时间而不断地向前推移 。
m i n ( ) [ ( ) ? ( / ) ] ( )J k q w k i y k i k r u k ji M j
j
M
i
P
? ? ? ? ? ? ?
??
?? 2 2
11
1?
25
DMC的滚动优化 (2)
?控制增量的最优开环解
– 在采样时刻 t=kT,根据性能指标,可求出
控制增量的最优开环解
– 但由于完全根据预测模型,故为 开环解 。
26
动态矩阵控制的优化策略示意图
k k+M k+P
t/T
Δu(k+M-1) u(k+i) (i≥M-1) u(k)
Δu(k)
u(k+1)
ΔuM(k)
w(k+1)
TM
TP
k k+M k+P
t/T
wP(k)
w(k+2) w(k+P)
? ?kyPM?
? ?kkyM /1? ?
? ?kkyM /2? ? ? ?kPkyM /? ?
P?
?
1?
2?
27
DMC的反馈校正 (1)
? 在 t=kT 时刻, u(k)已实施到系统上
?t=(k+1)T时刻,可测到实际输出值 y(k+1)
– 比较 y(k+1)出与预测值
得
– 基于 e(k+1)对未来偏差的预测为
hi*e(k+1),(h1=1,i=2,…,N)
? ? ? ? ? ?kkykyke /1?11 1 ?????
? ?kky /1? 1 ?
28
DMC的反馈校正 (2)
– 经 误差校正后的输出预测值 为
– 不考虑未来控制作用 影响
i=1,2,…,N-1
– 引入移位矩阵 S,得到下一次预测初值
? ? ? ? ? ?1?1? ????? kekk hyy N1c o r
? ? ? ?1/1?1/1? ??????? kikkik c o rN0 yy
? ? ? ?1?1? ???? kk c o rN0 ySy
29
DMC的反馈校正 (3)
? 误差校正及移位设初值示意图
k k+3 k+1 k+2 k+N k+N+1
t/T
h2e(k+1)
y(k+1)
e(k+1)
h3e(k+1)
y(k)
实际轨迹
? ?kN0y?
? ? ? ?kk N0c o r yy ?1? ??
? ?1?? kehN
? ?k1?Ny
? ?kky /1? ?
30
DMC小结
?动态矩阵控制算法组成
– 由预测、控制与校正等三部分组成
?在线实施流程框图
– 初始化程序
– 在线控制部分
31
DMC在线控制程序流程
DMC初始化程序 流程图
设置控制初值 u0→ u
检测实际输出 y0,,并设置预测
初值 y0→ y(i),i=1,2,…,N
计算控制量并输出
u + Δu → u
计算输出预测值
y(i)+aiΔu→ i=1,2,…,N
计算控制增量
返回
入口
uiywdPi i ?????1 ))((
DMC在线计算程序 流程图
检测实际输出 y,并计算误差
y- y(1) → e
计算控制量并输出
u + Δu → u
计算输出预测值
+aiΔu→,i=1,2,…,N
计算控制增量
返回
入口
预测值校正
,i=1,2,…,N
移位设置该时刻预测初值
→,i=1,2,…,N- 1
uiywdPi i ?????1 ))(?(
32
DMC的实现与工程设计 (1)
?预备工作
– 渐近稳定的系统
– 采样周期确定
– 动态矩阵确定 (测试阶跃响应 )
– 参数整定,即确定优化时域 P、控制时域 M、权
矩阵 Q和 R、权系数 hi
– 离线计算 F,dT
33
DMC的实现与工程设计 (2)
?在线计算
– 得到控制量 u(k)
?仿真调优
?对时滞对象的 DMC控制
– 设纯滞后为 l 个采样周期,将优化时域 P增加
到 P+l,可推导出相当于无时滞时的 DMC算法。
第十二章 预测控制
2
12.1预测控制基础
? 模型预测控制发展背景
? 特点
? 基本原理
3
模型预测控制的发展背景 (1)
?现代控制理论及应用 的发展与特点
– 要求
? 精确的模型
? 最优的性能指标
? 系统的设计方法
– 应用
? 航天、航空
? 军事等领域
4
模型预测控制的发展背景 (2)
? 工业过程的特点
– 多变量、非线性、时变性、强耦合,不确定
性
? 工业过程对控制的要求
– 高质量的控制性能
– 对模型要求不高
– 实现方便
5
预测控制的特点 ( 1)
? 建模方便,不需要深入了解过程内部机理
? 非最小化描述的离散卷积和模型,有利于提高
系统的鲁棒性
? 滚动的优化策略,较好的动态控制效果
? 不增加理论困难,可推广到有约束条件、大纯
滞后、非最小相位及非线性等过程
? 是一种 计算机优化控制算法
6
预测控制的特点 ( 2)
? 对模型要求不高
? 鲁棒性可调
? 可处理约束 (操作变量 MV、被控变量 CV)
? 可处理, 方,,, 瘦,,, 胖,,进行自动
转换
? 可实现多目标优化(包括经济指标)
? 可处理特殊系统:非最小相位系统、伪积分
系统、零增益系统
7
目前预测控制的发展方向
? 多变量预测控制系统的稳定性、鲁棒性
– 线性系统、自适应预测 —理论性较强
? 非线性预测控制系统
– 内部模型用神经网络( ANN)描述
? 针对预测控制的特点开展研究
– 国内外先进控制软件包开发所采用
8
预测控制的基本原理
?1978年,J.Richalet等就提出了预测控制算
法的三要素,
– 内部 (预测 )模型、参考轨迹、控制算法
? 现在一般则更清楚地表述为,
– 内部 (预测 )模型、滚动优化、反馈控制
9
预测模型 (内部模型 )( 1)
?预测模型的功能
根据被控对象的历史信息和未来输
入,预测系统未来响应 。
?预测模型形式
– 参数模型:如微分方程、差分方程
– 非参数模型:如脉冲响应、阶跃响应
10
预测模型 (内部模型 )( 2)
? 基于模型的预测示意图
2
y
u
1
4
3
未来 过去
k 时刻 1— 控制策略 Ⅰ
2— 控制策略 Ⅱ
3— 对应于控制 策略 Ⅰ 的输出
4— 对应于控制策略 Ⅱ 的输出
11
滚动优化 (在线优化) (1)
?控制目的
– 通过某一性能指标的最优,确定未来的控制作
用
?优化过程
?随时间推移在线优化,反复进行
?每一步实现的是静态优化
?全局看却是动态优化
12
滚动优化 (在线优化) (2)
? 滚动优化示意图
yr
yr
y
k时刻优化
2
1 3
y
k+1时刻优化
2
1
3
k+1 k
t/T
1─参考轨迹 yr (虚线 )
2─最优预测输出 y(实线 )
3─最优控制作用 u
13
反馈校正 (1)
? 每到一个新的采样时刻,都要通过 实际测到
的输出 信息对基于模型的 预测输出 进行修正
,然后再进行新的优化。不断根据系统的实
际输出对预测输出值作出修正使 滚动优化不
但基于模型,而且利用了反馈信息,构成闭
环优化。
14
反馈校正 (误差校正 )(2)
? 误差校正示意图
y
u
k k+1
4
1
2
3
1─k时刻的预测输出
2─k+1时刻实际输出
3─预测误差
4─k+1时刻校正后的预测输出
t/T
15
12.2 模型算法控制 (MAC)( 1)
? MAC的 预测模型,系统的 单位脉冲响应 如图
所示,可写为 ? ?
1kugy TMM ???
g2
N 2 1 0
t/T
1 g1
y
gN
系统的离散脉冲响应示意图
16
模型算法控制 (MAC)( 2)
? 参考轨迹与最优化示意图
w
y(t)
t/T k+P k+1 k
u(t)
yP(t)
yr(t)
未来 过去
17
模型算法控制 (MAC)( 3)
? 闭环预测 ---相当于 DMC中的误差校正
? 滚动优化 和最优控制算法
yr
w
参考轨迹模型
yr(k+i)
优化算法
minJP(k) 对象
模型
ym(k+i)
预测
yp(k+i)
yP
ym
e
y u
模型算法控制原理示意图
18
12.3 动态矩阵控制 (DMC)
? 基于被控对象的 单位阶跃响应
– 适用于 渐近稳定的 线性对象
即,设一个系统的离散采样数据 {a1,a2, …,
aN} 则有限个采样周期后,满足
)(?? aa N
19
动态矩阵控制 (DMC)
?DMC算法中的模型参数
– 有限集合 aT={a1,a2, …,aN} 中的参数可完全
描述系统的动态特性 N称为建模时域 。
?系统的渐近稳定性
– 保证模型可用有限的阶跃响应描述
?系统的线性性
– 则保证了可用线性系统的迭加性等
20
DMC的预测模型 (1)
? 系统的单位阶跃采样数据示意图
模型截断 y
0
1 2 3
a3 a2 a1
N N-1
aN aN-1
t/T
21
DMC的预测模型 (2)
如 P20图,t=kT时刻预测未来 N个时刻
? 无控制作用 u(k)的预测输出为
? 考虑 有控制作用 ? u(k)时的预测输出为
? ? ? ? ? ?? ?TkNkykkykky /?/2?/1?? 0000N ???? ?y
? ? ? ? ? ?? ? Ty kNkykkykky /?/2?/1?? 1111N ???? ?
? ? ? ? ? ?kukk ???? ayy N0N1 ??
? ?TN21 aaaa ??
22
根据输入控制增量预测输出的示意图
k+1 k+2 k+3
aP-M+1Δu(k+M-1)
a1Δu(k+1)
k+P
t/T
a1Δu(k) a
2Δu(k) a3Δu(k)
a2Δu(k+1)
a1Δu(k+2) aP-1Δu(k+1)
aPΔu(k)
? ?kky /1?0 ? ? ?kky /2?0 ? ? ?kky /3?0 ? ? ?kyp0?
? ?kkyM /1? ?
? ?kkyM /2? ?
? ?kky M /2? ?
? ?kyPM?
23
DMC的预测模型 (3)
?M 个连续的控制增量 ? u(k),? u(k+1),…
? u(k+M-1)作用下,系统在未来 P时刻的预测
输出
?A称为 DMC的 动态矩阵, P是 滚动优化时域长度
,M是 控制时域长度 。
? ? ? ? ? ?kukk M???? Ayy P0PM ??
? ? ? ? ? ? ? ?? ? TΔ u 11 ??????? MkukukukM ?
24
DMC的滚动优化 (1)
? 滚动优化的性能指标
– 通过优化指标,确定出未来 M 个控制增量,使未来 P
个输出预测值尽可能地接近期望值 w如 P24页图如示。
– 不同采样时刻,优化性能指标不同,但都具有同样的
形式,且 优化时域随时间而不断地向前推移 。
m i n ( ) [ ( ) ? ( / ) ] ( )J k q w k i y k i k r u k ji M j
j
M
i
P
? ? ? ? ? ? ?
??
?? 2 2
11
1?
25
DMC的滚动优化 (2)
?控制增量的最优开环解
– 在采样时刻 t=kT,根据性能指标,可求出
控制增量的最优开环解
– 但由于完全根据预测模型,故为 开环解 。
26
动态矩阵控制的优化策略示意图
k k+M k+P
t/T
Δu(k+M-1) u(k+i) (i≥M-1) u(k)
Δu(k)
u(k+1)
ΔuM(k)
w(k+1)
TM
TP
k k+M k+P
t/T
wP(k)
w(k+2) w(k+P)
? ?kyPM?
? ?kkyM /1? ?
? ?kkyM /2? ? ? ?kPkyM /? ?
P?
?
1?
2?
27
DMC的反馈校正 (1)
? 在 t=kT 时刻, u(k)已实施到系统上
?t=(k+1)T时刻,可测到实际输出值 y(k+1)
– 比较 y(k+1)出与预测值
得
– 基于 e(k+1)对未来偏差的预测为
hi*e(k+1),(h1=1,i=2,…,N)
? ? ? ? ? ?kkykyke /1?11 1 ?????
? ?kky /1? 1 ?
28
DMC的反馈校正 (2)
– 经 误差校正后的输出预测值 为
– 不考虑未来控制作用 影响
i=1,2,…,N-1
– 引入移位矩阵 S,得到下一次预测初值
? ? ? ? ? ?1?1? ????? kekk hyy N1c o r
? ? ? ?1/1?1/1? ??????? kikkik c o rN0 yy
? ? ? ?1?1? ???? kk c o rN0 ySy
29
DMC的反馈校正 (3)
? 误差校正及移位设初值示意图
k k+3 k+1 k+2 k+N k+N+1
t/T
h2e(k+1)
y(k+1)
e(k+1)
h3e(k+1)
y(k)
实际轨迹
? ?kN0y?
? ? ? ?kk N0c o r yy ?1? ??
? ?1?? kehN
? ?k1?Ny
? ?kky /1? ?
30
DMC小结
?动态矩阵控制算法组成
– 由预测、控制与校正等三部分组成
?在线实施流程框图
– 初始化程序
– 在线控制部分
31
DMC在线控制程序流程
DMC初始化程序 流程图
设置控制初值 u0→ u
检测实际输出 y0,,并设置预测
初值 y0→ y(i),i=1,2,…,N
计算控制量并输出
u + Δu → u
计算输出预测值
y(i)+aiΔu→ i=1,2,…,N
计算控制增量
返回
入口
uiywdPi i ?????1 ))((
DMC在线计算程序 流程图
检测实际输出 y,并计算误差
y- y(1) → e
计算控制量并输出
u + Δu → u
计算输出预测值
+aiΔu→,i=1,2,…,N
计算控制增量
返回
入口
预测值校正
,i=1,2,…,N
移位设置该时刻预测初值
→,i=1,2,…,N- 1
uiywdPi i ?????1 ))(?(
32
DMC的实现与工程设计 (1)
?预备工作
– 渐近稳定的系统
– 采样周期确定
– 动态矩阵确定 (测试阶跃响应 )
– 参数整定,即确定优化时域 P、控制时域 M、权
矩阵 Q和 R、权系数 hi
– 离线计算 F,dT
33
DMC的实现与工程设计 (2)
?在线计算
– 得到控制量 u(k)
?仿真调优
?对时滞对象的 DMC控制
– 设纯滞后为 l 个采样周期,将优化时域 P增加
到 P+l,可推导出相当于无时滞时的 DMC算法。