一种存在假数据注入攻击时的最优跟踪控制器设计方法转让专利

申请号 : CN201811453386.6

文献号 : CN109375514B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘皓

申请人 : 沈阳航空航天大学

摘要 :

本发明涉及一种智能跟踪控制器,当存在假数据注入攻击时,该控制器能够实时的计算最优跟踪控制律,使得系统的输出能够跟踪系统的参考输入。该控制器可以包含不同的控制算法处理器,采用基于博弈论和Q‑学习的自适应动态规划算法,可以适用于系统动态未知的情况,甚至于只能获得输入‑输出数据的情况。本发明适用于通过无线网络连接系统和控制器的情况,或者通过无线通讯网络传输数据的情况,在无人机编队飞行、智能车编队控制等方面有极大的应用价值。

权利要求 :

1.一种存在假数据注入攻击时的最优跟踪控制器设计方法,其特征在于,包括如下步骤:

步骤一:建立假数据攻击模型和增广系统模型;

步骤二:采用博弈论方法,建立攻防双方的博弈模型;

步骤三:采用基于Q‑函数的强化学习方法,求解博弈双方的最优策略,包括策略迭代和值迭代方法;

步骤四:基于输入‑输出数据,采用Q‑学习方法,迭代求解最优策略;

所述的步骤一具体为:考虑如下的系统模型:xk+1=Axk+Buk其中,A和B为系统矩阵;如果系统控制输入uk在传输过程中受到攻击,那么受到假数据注入攻击后的系统模型为:其中,q为攻击者数目, 表示第i个传输通受到了第j个攻击者攻击,否则未受攻击; 为k时刻第j个通道注入的假数据;

假设跟踪模型具有如下形式:其中,矩阵T为跟踪模型矩阵;则增广系统可以表述为:所述的步骤二具体为:假设跟踪控制器和假数据均为状态 的线性函数,即其中,K=[K1,K2]和 分别为攻防双方的反馈增益,博弈双方选取如下的支付函数:其中,γ∈(0,1)为折扣因子,Qe和R分别为给定的半正定和正定矩阵;防守方和攻击方的最优策略设计为:

2.根据权利要求1所述的一种存在假数据注入攻击时的最优跟踪控制器设计方法,其特征在于,所述的步骤三具体为:定义如下的Q‑函数:通过求解方程 和 可以得到如下的攻防双方最优行动策略:

其中,基于Q‑函数的策略迭代和值迭代方法分别在算法1和算法2中给出;

算法1:基于Q‑函数的策略迭代算法,包括如下步骤,

0 0 T

1)、初始化:设定j=0,选择H=(H)j+1

2)、策略评估:解下面的方程,求P

3)、策略改进:

j+1 j

4)、停止条件:||H ‑H||<∈;

算法2:基于Q‑函数的值迭代算法,包括如下步骤,

0 0 T

1)、初始化:设定j=0,选择H=(H)j+1

2)、策略评估:解下面的方程求P

3)、策略改进:

j+1 j

4)停止条件:||H ‑H||<∈。

3.根据权利要求1所述的一种存在假数据注入攻击时的最优跟踪控制器设计方法,其特征在于,所述的步骤四具体为:系统状态 可以采用如下的输入‑输出序列表示:那么,Q‑函数可以写成下面的形式:因此,攻防双方的最优策略为:其中,

采用Q‑学习的策略迭代和值迭代方法分别在算法3和算法4中给出:算法3:采用Q‑学习的策略迭代算法,包括如下步骤,

1)初始化:设定j=0,选择可稳的初始策略 和j+1

2)策略评估:解下面的方程求h

3)策略改进:

j+1 j

4)停止条件:||H ‑H||<∈算法4:采用Q‑学习的值迭代算法,包括如下步骤,

1)初始化:设定j=0,选择任意的初始策略 和j+1

2)策略评估:解下面的方程求h

3)策略改进:

j+1 j

4)停止条件:||H ‑H||<∈。

说明书 :

一种存在假数据注入攻击时的最优跟踪控制器设计方法

技术领域

[0001] 本发明涉及利用博弈论、自适应动态规划和强化学习方法,针对线性离散时间系统存在假数据注入攻击时,确定最优跟踪控制器的方法。

背景技术

[0002] 最优跟踪控制是控制领域的一个重要研究课题,具有广泛的应用背景。比如,智能车和无人机的轨迹跟踪,机器人的跟踪控制等。最优跟踪控制的目的是使系统的输出在最
优意义下能够跟踪参考输入(或参考轨迹),这可以通过最小化预先给定的二次型性能指标
函数来实现。需要指出的是,随着网络技术的发展与应用,无线网络传输技术被越来越多的
应用于数据的远程传输。然而,由于无线网络的存在,使得传输的数据易于被对手攻击,主
要包括拒绝服务攻击、重放攻击、假数据注入攻击等。所以,研究存在网络攻击时的最优跟
踪控制具有重要的现实意义。本发明主要针对假数据注入攻击进行研究。
[0003] 传统的最优跟踪控制,采用动态规划方法设计相应的跟踪控制器。然而,动态规划方法属于由后向前的递推方法,因此不能在线计算,并且存在维数灾的问题。自适应动态规
划方法属于人工智能范畴,本质上是基于强化学习理论,模拟人通过对复杂环境的反馈进
行学习的思路,进而时间向前的递推求解控制策略,所以能够在线执行。
[0004] 采用Q学习方法计算最优控制率,可以不需要原系统和参考轨迹发生器的系统矩阵,适用于某些动态矩阵未知的情况。此外,该方法还可以仅仅采用输入输出数据,迭代求
解最优跟踪控制策略,而不需要当前状态信息。

发明内容

[0005] 本发明目的在于提出一种存在假数据注入攻击时,离散时间系统最优跟踪控制器的设计方法,解决了以前存在假数据注入攻击时无法跟踪的问题。本发明的系统结构图如
图1所示。本发明的技术方案实施如下:
[0006] 1)建立假数据攻击模型和增广系统模型;
[0007] 2)采用博弈论方法,建立攻防双方的博弈模型;防守方为控制器,攻击方为假数据的注入方;
[0008] 3)建立贝尔曼方程,通过最优控制理论,求解最优控制策略和攻击策略;采用策略迭代方法和值迭代方法求解博弈代数里卡提方程;
[0009] 4)采用基于Q‑函数的强化学习方法,求解博弈双方的最优策略,包括策略迭代和值迭代方法;
[0010] 5)仅仅基于输入‑输出数据,采用Q‑学习方法,迭代求解最优策略。

附图说明

[0011] 图1为存在假数据注入攻击时的系统结构图。

具体实施方式

[0012] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并
不用于限定本发明。
[0013] 参考图1,本发明提出了一种采用博弈论、自适应动态规划和Q学习的方法,解决了离散时间系统的最优跟踪控制问题。具体实施方式如下:
[0014] 1)建立假数据攻击模型和增广模型
[0015] 考虑如下的系统模型
[0016] xk+1=Axk+Buk      (1)
[0017] 其中,A和B为系统矩阵;假设系统控制输入uk在传输过程中受到攻击,受到假数据注入攻击后的系统模型变为
[0018]
[0019] 其中,q为攻击者数目, 表示第i个传输通受到了第j个攻击者攻击,否则未受攻击; 为k时刻第j个通道注入的假数据。
[0020] 假设跟踪模型具有如下形式
[0021]
[0022] 其中,矩阵T为跟踪模型矩阵;需要注意的是,上式中系统矩阵T不要求是Hurwitz的。结合式(2)和式(3),可得如下的增广系统方程
[0023]
[0024] 2)采用博弈论方法,建立攻防双方的博弈模型
[0025] 通常,控制器有多种形式,例如,状态反馈、输出反馈、动态输出反馈等。此外,注入假数据也可以多种多样。本发明假设跟踪控制器和假数据均为状态 的线性函数,即
[0026]
[0027]
[0028] 其中,K=[K1,K2]和 分别为攻防双方的反馈增益。分别为博弈双方选取如下的支付函数:
[0029]
[0030]
[0031] 其中, Qe≥0,R>0,γ∈(0,1)为折扣因子。所以,防守方和攻击方的最优策略为
[0032]
[0033]
[0034] 求解(9)和(10)等价于求解下面的博弈问题
[0035]
[0036] 3)建立贝尔曼方程,通过最优控制理论,求解最优控制策略和攻击策略
[0037] 首先,定义如下的效用函数,
[0038]
[0039] 然后,通过计算,可以得到下面的最优控制贝尔曼方程,
[0040]
[0041] 根据最优控制理论可知, P>0。所以,通过求解最优控制方程,可以得到如下攻防双方的最优策略:
[0042]
[0043]
[0044] 其中,
[0045]
[0046] Θ=[(Θ1)T(Θ3)T…(Θq)T]T
[0047]
[0048] L(P)=[(L1(P))T(L2(P))T…(Lq(P))T]T
[0049] 矩阵P>0,并且满足
[0050]
[0051] 以上结果是根据动态规划方法给出的,只能离线计算。现在我们采用强化学习方法,在线计算博弈双方最优策略。下面的算法1和算法2分别给出了策略迭代和值迭代计算
过程。
[0052] 算法1:在线策略迭代
[0053] 1.初始化:设定j=0,选择稳定的初始策略 和
[0054] 2.策略评估:解下面的方程求Pj+1
[0055]
[0056] 3.策略改进:
[0057] 4.停止条件:||Kj+1‑Kj||<∈,||Lj+1‑Lj||<∈
[0058] 算法2:值迭代算法
[0059] 1.初始化:设定j=0,选择稳定的初始策略 和
[0060] 2.策略评估:解下面的方程求Pj+1
[0061]
[0062] 3.策略改进:
[0063] 4.停止条件:||Kj+1‑Kj||<∈,||Lj+1‑Lj||<∈;
[0064] 由算法1可以看出,求解方程(17)需要已知数据 并且初始值必须是可稳的,否则方程无解。而算法2进行了相应的改进,不再需要初始值是可稳
的。
[0065] 4)采用基于Q‑函数的强化学习方法,求解博弈双方的最优策略
[0066] 定义如下的Q‑函数,
[0067]
[0068] 为了描述方便重新写成如下的紧凑形式,
[0069]
[0070] 其中,
[0071]
[0072]
[0073]
[0074]
[0075]
[0076] 所以,可以通过求解方程 和 可以得到如下的攻防双方最优策略,
[0077]
[0078]
[0079] 将式(20)带入式(19),可以得到基于Q‑函数的贝尔曼方程,该方程是迭代过程中的一个重要方程。基于Q‑函数的策略迭代和值迭代方法分别在算法3和算法4中给出。
[0080] 算法3:基于Q‑函数的策略迭代算法
[0081] 1.初始化:设定j=0,选择H0=(H0)T
[0082] 2.策略评估:解下面的方程求Pj+1
[0083]
[0084] 3.策略改进:
[0085]
[0086]
[0087] 4、停止条件:||Hj+1‑Hj||<∈
[0088] 算法4:基于Q‑函数的值迭代算法
[0089] 1.初始化:设定j=0,选择H0=(H0)T
[0090] 2.策略评估:解下面的方程求Pj+1
[0091]
[0092] 3.策略改进:
[0093]
[0094]
[0095] 4、停止条件:||Hj+1‑Hj||<∈。
[0096] 值得注意的是,基于Q‑函数的迭代算法3和算法4不需要预先已知增广系统的系统矩阵 和
[0097] 基于输入‑输出数据,采用Q‑学习方法,迭代求解最优策略
[0098] 假设系统是可观测的,则系统状态 可以采用如下的输入‑输出序列表示,
[0099]
[0100] 其中,
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107]
[0108] 由上式可以看出,存在一个常数k>0,使得当N<k时,rank(VN)<n+p,当N≥κ时,rank(VN)=n+p。其中,n为原系统状态维数,p为系统输出维数。因此,选择N≥κ使得矩阵VN列
满秩。定义
[0109]
[0110] 那么,Q‑函数可以写成下面的形式
[0111]
[0112] 因此,可以得到攻防双方的最优策略为
[0113]
[0114]
[0115] 其中,
[0116]
[0117]
[0118]
[0119] 基于Q‑函数和输入‑输出数据的贝尔曼方程可以写成
[0120]
[0121] 线性参数化Q‑函数,可以得到
[0122]
[0123] 上式中,未知矩阵 有 个未知元素,因为 基于以上分析,算法5和算法6分别给出了
采用Q‑学习的策略迭代和值迭代方法,该方法仅仅使用了输入‑输出数据。
[0124] 算法5:采用Q‑学习的策略迭代算法
[0125] 1.初始化:设定j=0,选择可稳的初始策略 和
[0126] 2.策略评估:解下面的方程求hj+1
[0127]
[0128] 3.策略改进:
[0129]
[0130]
[0131] 4、停止条件:||Hj+1‑Hj||<∈
[0132] 算法6:采用Q‑学习的值迭代算法
[0133] 1.初始化:设定j=0,选择任意的初始策略 和
[0134] 2.策略评估:解下面的方程求hj+1
[0135]
[0136] 3.策略改进:
[0137]
[0138]
[0139] 4、停止条件:||Hj+1‑Hj||<∈;
[0140] 由算法6可以看出,不需要攻防双方初始策略是可稳的。此外,为了递归计算的采样数量必须满足