MPC之持续扰动下带约束的预测控制(L. Chisci 2001)

原文标题:Systems with persistent disturbances: predictive control with restricted constraints

摘要


本论文解决在此场景下的LDTS(线性离散时间系统)的predictive state control:持续有界扰动、控制约束。
通常情况:约束和扰动会使得控制器不可行、不稳定。
结果通过仿真图像展示。

1. 介绍


  • predictive control law: 最小化moving horizon performance index(考虑控制量、状态约束)
  • 没有扰动的控制已被充分讨论:(Keerthi & Gilbert, 1988)
  • 如何保证稳定:ensure feasibility, 即admissible input sequence(满足约束和terminal conditions),但nominal cost constrained minimization for future state vectors在扰动下无法实现
  • 旧方法:min-max最优化(Lee and Yu 1997,Scokaert and Mayne 1998),但是两大缺点:计算成本高;在最坏情况下的扰动下表现糟糕。
  • 正确的考量:在所有可能的扰动下,最小化nominal performance index。例如,给予合适的约束(Casavola and Mosca,1996;Gossner et al.,1997)。
  • 本文基于Gossner的结果做了很大改进,提出了robust predictive controller。1. 使用了状态-空间框架,因此可用于多变量系统,原只考虑SISO系统。2. 适用于任何stablizing terminal control law,原只用于dead-beat terminal conditions。3. 不仅在有界状态响应和无扰动下保证了渐进稳定,还保证在终端线性反馈和扰动下,状态收敛于最小可行鲁棒不变集(the set of all states reachable from the origin under the disturbance input and the terminal linear constant feedback)。

2. 问题成型


2.1 集合的相关定义
  • \mathscr{A+B}:所有元素的组合的和
  • \mathscr{A-B}:同上,作差
  • M\mathscr{(A)}: 对\mathscr{A}所有元素用M映射
  • M^{-1}\mathscr{(C)}: 所有使Ma=\mathscr{C}的a
  • \mathscr{A\sim B}: 所有使a+\mathscr{B}包含于\mathscr{A}的a
  • int\mathscr{(A)}:A内部
2.2 系统定义

  • 凡满足(2)的扰动称为admissible
  • \mathscr{(A,B)}可稳定
  • \mathscr{U,X,W} 都包含原点
  • \mathscr{U,W} 都是compact set(闭集合且无聚点)
2.3 控制目标

设计一个非线性的状态反馈——u_t=g(x_t),能使系统到达原点的邻域Ω(尽量小),并在满足所有约束和条件下reduce to a linear well-tuned feedback。

  • nominal feedback: u_t=Fx_t,无约束下的最优控制,假设已知并固定。因此渐进稳定的nominal闭环系统是:

    \Phi的所有特征值在单位圆内。

Definition 1: \Sigma \subset \mathbb{R^n},若对所有x和w,都有Ax+Dw也在\Sigma内,则称为d-invariant,扰动不变集。

  • \mathscr{X}_c\triangleq \mathscr{X}\cap F^{-1}\mathscr{(U)}:在nominal feedback下满足约束的状态。
  • 重新定义Ω:闭环系统的\mathscr{X}_c的最小d-invariant。
  • \mathscr{R}_j\triangleq \sum_{i=0}^{j-1}\Phi^iD\mathscr{W}: 标称线性闭环系统的j步可达集(从原点出发,有扰动w)。1. j\rightarrow \infty时极限存在,且\mathscr{R}_\infty为最小compact d-invariant set, 即\subset \Sigma。即,\mathscr{R}_\infty \subset \mathscr{X}_c \iff \mathscr{X}_c有d-invariant。
2.4 重申控制目标

新目标:使非线性反馈渐进趋于nominal feedback,即:

3. Robust predictive control via 约束限制


NPC Nominal Predictive Control:无扰动下的控制
RPC Robust Predictive Control:考虑扰动
c_{t+k|t}: 在t时刻根据nominal feedback计划的未来动作
x_{t+k|t},u_{t+k|t}: 根据x_t, c_{t+j|t}得到的不考虑扰动的对x_{t+k},u_{t+k}的预估,0\leq j<k

3.1 NPC

根据t时刻的状态x_t

  • 损失函数:\min J\triangleq \sum_{k=0}^{N-1} c^T_{t+k|t}\Psi c_{t+k|t}
  • 约束
  • 求最优解:\hat{C}_t\triangleq [\hat{c}^T_{t|t},\hat{c}^T_{t+1|t},\dots,\hat{c}^T_{t+N-1|t}]^T
  • c_t=\hat{c}_{t|t},代入u_t=Fx_t+c_t

Remark 2: N为控制时域,代表总共考虑几步。N越大表现越好,可行域越大但计算成本越高。
Remark 3:J代表和nomianl control的偏差。若F是无约束的LQ反馈增益并要获得最小的u和x的二次损失,则\Psi=R+B^TPB,P来自Riccati方程,此时u和x的二次损失变为知名的LQ方程:


Remark 4:c_t\triangleq \hat{c}_{t|t}=c({x_t}),最优控制序列的第一项依赖x_t,用以定义g(x_t)=Fx_t+c(x_t)
Remark 5: 每个x和u都需要在k>0时满足约束,但无穷多的约束可化简为有限个(N+i^*)。

3.2 RPC

考虑扰动,真实的x和u如下:
x_{t+k}=x_{t+k|t}+\sum^k_{i=1} \Phi^{i-1}Dw_{t+k-i}
u_{t+k}=u_{t+k|t}+\sum^k_{i=1}F \Phi^{i-1}Dw_{t+k-i}
都由无扰动预测和扰动下的强制响应两项组成。因此,NPC中的(18)约束改写为更严格的:
x_{t+k|t}\in \mathscr{X}_k,\; u_{t+k|t}\in \mathscr{U}_k, \; k\geq 0, 其中:
\mathscr{X}_k\triangleq \mathscr{X}\sim \mathscr{R}_k,\;\mathscr{U}_k\triangleq \mathscr{U}\sim F\mathscr{R}_k.\quad (21)
将NPC的约束(18)改为如上即RPC算法,根据x_t计算u_t

3.3 实现中的问题

为将无限多的约束(21)减少,实际上当k\geq N时,等价于x_{t+N|t}\in \Sigma_0 \sim \mathscr{R}_N,其中\Sigma_0\triangleq\{x:\Phi^ix\in \mathscr{X}, F\Phi^ix\in \mathscr{X} \text{ for }i = 0,1,\dots,i^*\},在XUW都是多面体时i*可由LP工具离线确定。因此,约束(21)可改写为:
x_{t+k|t}\in \mathscr{X}_k,\; u_{t+k|t}\in \mathscr{U}_k, \; k=0,1,\dots,N-1,
x_{t+N|t}\in \Sigma_0 \sim \mathscr{R}_N\qquad (25)
RPC问题也改写为:


其中,L M v是一些合适的矩阵,代表了约束(25)。这个RPC算法比原论文有两点不同:

  1. 采用状态x而不是输入-输出框架,从而可以考虑广义的状态约束如U W;
  2. nominal feedback不需要是deadbeat,反而deadbeat可能缩小可行域。

4. 主要结果


Definition 6:
C_tx_t admissible: 满足14-17、21约束
x_t feasible:存在admissible的C_t

4.1 Feasibility and stability

Lemma 7: 若\hat Cx_tadmissible \Rightarrow \tilde C_{t+1}x_{t+1}也 admissible
证略。
Theorem 8: 若x_0 feasible, RPC反馈u_t=Fx_t+c_t, c_t=\hat c_{t|t},则1. x和u在所有时刻满足约束X U;2. c_\infty=0;3. x_\infty\rightarrow\mathscr R_\infty
证略。
借Theorem 8可知,只要初始态为可行域,则通过RPC反馈可保证最终态收敛于\mathscr R_\infty

4.2 吸引域(the domain of attraction)

\underline\Sigma_N:
解释1:可行的初始域,取决于N,也是RPC反馈下的闭环系统的吸引域,\in \mathscr X
解释2:在扰动下在N步内收敛入\Sigma_0.
若W X U都是凸多面体,\Sigma_0, \underline\Sigma_N都是凸多面体。且:
\underline\Sigma_N=\{x|\exists c: M_Nc+L_Nx\leq v_n\}

5. 比较


将RPC算法与已有的:1. NPC;2. deadbeat RPC;3. Command Governers 分别比较。对第3还进行融合测试。
测试例子中,给出A B D F矩阵,给出\mathscr{X, U, W}的约束条件,给出Q,R,F是根据Q R得出的LQ增益,系统特征值都在单位圆外。

5.1 和NPC比较

定义:

  • \overline\Sigma_N:无扰动NPC下的吸引域
  • \overline\Sigma_0\mathscr X_c的最大不变集(?
  • \underline\Sigma_N\subset \overline\Sigma_N: 比较扰动的影响
    结论:RPC在域内可以处理最坏情况的扰动,保持稳定。
5.2 与deadbeat RPC比较

本算法吸引域更大,或者说,同样的吸引域,算力成本更低。

5.3 与Command Governor (CG)的连接

CG 的论文(Casavola
&Mosca (1996); Gilbert&Kolmanovsky (1999))
虽然CG原始的作用是定值跟踪(set point tracking),但也可用于调整。
以下是重塑的CG算法:

  1. N=0
  2. 将(16)的控制序列改为:u_{t+k|t}=Fx_{t+k|t}+\gamma,\; k\geq 0
  3. 损失函数:J(\gamma)\triangleq \gamma^T\Psi_\gamma\gamma\triangleq||\gamma||^2_\Psi, \Psi_\gamma=\Psi_\gamma^T>0
  • \gamma:满足约束的自由度,取代N。
  • x(\gamma)=(I-\Phi)^{-1}B\gamma: 平衡状态
  • u(\gamma)=[F(I-\Phi)^{-1}B+I]\gamma:输入
  • \Gamma\triangleq\{\gamma:\;x(\gamma)\in int(\mathscr X_\infty),u(\gamma)\in int(\mathscr U_\infty)\}:set of statically admissible commands
  • \Sigma_0(\gamma)\triangleq\{x:\Phi^k(x-x(\gamma))+x(\gamma)\in\mathscr X_k \text{ and } F\Phi^k(x-x(\gamma))+u(\gamma)\in\mathscr U_k,\forall k\geq 0\}\mathscr X_c的最大d-invariant。
  • CG算法可表示为:
    \gamma_t=\gamma(x_t)=\arg \min_{\gamma\in\Gamma} ||\gamma||^2_\Psi, \text{ subject to } x_t\in\Sigma_0(\gamma)
  • \Sigma_0(\Gamma)\triangleq\bigcup_{\gamma\in\Gamma}\Sigma_0(\gamma): 对任何x_0\in\Sigma_0(\Gamma), 有限时间后所有\gamma_t=0。即相当于RPC的\underline\Sigma_N
  • 对于CG算法,通过遍历\Gamma的所有\gamma来扩大\Sigma_0, 而RPC则通过N个自由控制步数来将\Sigma_0来扩张到\underline\Sigma_N。显然N步的提升性能更好
  • RPC也可用于定值追踪。\tilde x=x-x(\gamma), \tilde u=u-u(\gamma),反馈command是\gamma=u(\gamma)-Fx(\gamma)。只要x_t\in\underline\Sigma_N(\gamma),即\Sigma_0(\gamma)在N步自由控制后。
  • 只要x(\gamma_1)+\mathscr R_\infty\subset\underline\Sigma_N(\gamma_2),即可从\gamma_1转换到\gamma_2
  • 可以将两者RPC和CG结合起来:
    u_{t+k|t}=Fx_{t+k|t}+c_{t+k|t}+\gamma, k\geq 0, c_{t+k|t}=0, k\geq N

6. 总结


合适的约束限制可以使预测控制器更鲁棒。如果初始状态是可行的,则未来对于所有允许的扰动都是可行的。由于约束限制可以离线运算,可以避免在线的额外计算负担。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容