发明名称 多变量差分方程模型的极大似然递推最小二乘辨识算法
摘要 本发明公开了一种多变量差分方程模型的极大似然递推最小二乘辨识算法,包括根据现有极大似然原理,构建出一种多变量差分方程模型中子系统极大似然准则函数;以多变量差分方程模型中子系统最大似然准则函数为基础,构建出多变量差分方程模型的极大似然递推最小二乘辨识算法的实现流程;构建一套多变量差分方程模型的极大似然递推最小二乘辨识算法。本发明采用极大似然原理和递推辨识方法,应用于线性多变量系统的参数估计。
申请公布号 CN105868163A 申请公布日期 2016.08.17
申请号 CN201610173971.5 申请日期 2016.03.24
申请人 南通大学 发明人 李俊红;杨奕;朱建红;李晨;杨赛;张晴;李建国
分类号 G06F17/17(2006.01)I 主分类号 G06F17/17(2006.01)I
代理机构 南通市永通专利事务所 32100 代理人 葛雷
主权项 一种多变量差分方程模型的极大似然递推最小二乘辨识算法,其特征是:包括下列步骤:(1)根据现有极大似然原理,构建出一种多变量差分方程模型中子系统极大似然准则函数:<maths num="0001"><math><![CDATA[<mrow><mi>J</mi><mrow><mo>(</mo><msub><mi>&theta;</mi><mi>i</mi></msub><mo>,</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msubsup><mi>v</mi><mi>i</mi><mn>2</mn></msubsup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000949192040000011.GIF" wi="572" he="195" /></maths>上式符号说明:θ<sub>i</sub>作为递推时刻t的参数向量,<img file="FDA0000949192040000012.GIF" wi="138" he="89" />作为信息向量;(2)以多变量差分方程模型中子系统最大似然准则函数为基础,构建出多变量差分方程模型的极大似然递推最小二乘辨识算法的实现流程:第一步:启动算法;第二步:对递推时刻t进行初始化,初始值为1;第三步:采集输入‑输出数据u(t)和y(t),构造出信息向量<img file="FDA0000949192040000013.GIF" wi="161" he="85" />第四步:计算滤波信息向量<img file="FDA0000949192040000014.GIF" wi="484" he="92" />以及<img file="FDA0000949192040000015.GIF" wi="217" he="85" />构造出<img file="FDA0000949192040000016.GIF" wi="189" he="85" />第五步:计算出L<sub>i</sub>(t)和P<sub>i</sub>(t);第六步:计算<img file="FDA0000949192040000017.GIF" wi="155" he="84" />第七步:实时刷新<img file="FDA0000949192040000018.GIF" wi="156" he="94" />第八步:递推时刻t加1,重复上述步骤;上述各符号的含义:输入变量:<img file="FDA0000949192040000021.GIF" wi="308" he="102" />输出变量:<img file="FDA0000949192040000022.GIF" wi="323" he="101" />子系统参数向量:<img file="FDA0000949192040000023.GIF" wi="1171" he="124" />子系统参数向量:<img file="FDA0000949192040000024.GIF" wi="476" he="101" />子系统信息向量:<img file="FDA0000949192040000025.GIF" wi="1388" he="125" />子系统信息向量:<img file="FDA0000949192040000026.GIF" wi="556" he="109" />子系统滤波信息向量:<img file="FDA0000949192040000027.GIF" wi="1491" he="116" />子系统滤波信息向量:<img file="FDA0000949192040000028.GIF" wi="588" he="118" />协方差矩阵:<img file="FDA0000949192040000029.GIF" wi="869" he="102" />增益向量:<img file="FDA00009491920400000210.GIF" wi="475" he="94" />(3)结合步骤(2)流程构建一套多变量差分方程模型的极大似然递推最小二乘辨识算法,如下:<maths num="0002"><math><![CDATA[<mrow><msub><mover><mi>&theta;</mi><mo>^</mo></mover><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mover><mi>&theta;</mi><mo>^</mo></mover><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><msub><mi>L</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><msub><mover><mi>v</mi><mo>^</mo></mover><mi>i</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>19</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000949192040000031.GIF" wi="1615" he="78" /></maths><img file="FDA0000949192040000032.GIF" wi="1623" he="170" /><img file="FDA0000949192040000033.GIF" wi="1626" he="84" /><img file="FDA0000949192040000034.GIF" wi="1610" he="89" /><img file="FDA0000949192040000035.GIF" wi="1621" he="194" /><img file="FDA0000949192040000036.GIF" wi="1644" he="223" /><maths num="0003"><math><![CDATA[<mrow><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><msub><mi>y</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><msub><mi>y</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>y</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>25</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000949192040000037.GIF" wi="1634" he="74" /></maths><maths num="0004"><math><![CDATA[<mrow><msub><mover><mi>u</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><msub><mi>u</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><msub><mi>u</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>,</mo><mo>...</mo><mo>,</mo><msub><mi>u</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>26</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000949192040000038.GIF" wi="1634" he="69" /></maths><maths num="0005"><math><![CDATA[<mrow><msub><mover><mover><mi>v</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><msub><mover><mi>v</mi><mo>^</mo></mover><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>,</mo><msub><mover><mi>v</mi><mo>^</mo></mover><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>2</mn><mo>)</mo></mrow><mo>,</mo><mo>...</mo><mo>,</mo><msub><mover><mi>v</mi><mo>^</mo></mover><mi>j</mi></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>&rsqb;</mo><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>27</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000949192040000039.GIF" wi="1629" he="87" /></maths><maths num="0006"><math><![CDATA[<mrow><msub><mover><mover><mi>y</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><msub><mi>n</mi><mi>i</mi></msub></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><msub><mover><mover><mi>y</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><mo>-</mo><mo>...</mo><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow><msub><mover><mover><mi>y</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>28</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00009491920400000310.GIF" wi="1673" he="91" /></maths><maths num="0007"><math><![CDATA[<mrow><msub><mover><mover><mi>u</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mover><mi>u</mi><mo>&OverBar;</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><msub><mi>n</mi><mi>i</mi></msub></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><msub><mover><mover><mi>u</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>-</mo><mo>...</mo><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><msub><mover><mover><mi>u</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mo>,</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>29</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00009491920400000311.GIF" wi="1673" he="88" /></maths><maths num="0008"><math><![CDATA[<mrow><msub><mover><mover><mi>v</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>=</mo><msub><mover><mover><mi>v</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><msub><mi>n</mi><mi>i</mi></msub></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><msub><mover><mover><mi>v</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>-</mo><mo>...</mo><mo>-</mo><msub><mover><mi>d</mi><mo>^</mo></mover><mrow><mi>i</mi><mi>i</mi><mo>,</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><msub><mover><mover><mi>v</mi><mo>&OverBar;</mo></mover><mo>^</mo></mover><mrow><mi>i</mi><mi>j</mi><mo>,</mo><mi>f</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>t</mi><mo>-</mo><msub><mi>n</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow><mo>.</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>30</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00009491920400000312.GIF" wi="1669" he="87" /></maths>对上述算法中符号的说明:定义输入变量为<img file="FDA00009491920400000313.GIF" wi="311" he="93" />输出变量为<img file="FDA00009491920400000314.GIF" wi="322" he="102" />定义<img file="FDA00009491920400000315.GIF" wi="1137" he="107" />作为子系统参数向量;定义<img file="FDA00009491920400000316.GIF" wi="447" he="88" />为子系统参数向量;定义<img file="FDA00009491920400000317.GIF" wi="1361" he="109" />为子系统信息向量;定义<img file="FDA00009491920400000318.GIF" wi="529" he="93" />作为子系统信息向量;定义<img file="FDA00009491920400000319.GIF" wi="1473" he="115" />为子系统滤波信息向量;定义<img file="FDA0000949192040000041.GIF" wi="562" he="104" />为子系统滤波信息向量;<img file="FDA0000949192040000042.GIF" wi="836" he="90" />作为协方差矩阵;<img file="FDA0000949192040000043.GIF" wi="448" he="83" />作为增益向量;上述算法的具体步骤:a)令t=1,设置初始值<img file="FDA0000949192040000044.GIF" wi="595" he="110" />P<sub>i</sub>(0)=p<sub>0</sub>I,当<img file="FDA0000949192040000045.GIF" wi="1175" he="101" />以及<img file="FDA0000949192040000046.GIF" wi="296" he="93" />b)采集输入‑输出数据u(t)和y(t),分别通过式(25)、(26)、(27)构造<img file="FDA0000949192040000047.GIF" wi="372" he="86" />和<img file="FDA0000949192040000048.GIF" wi="179" he="101" />通过式(23)构造<img file="FDA0000949192040000049.GIF" wi="169" he="98" />c)分别通过式(28)、(29)、(30)计算<img file="FDA00009491920400000410.GIF" wi="424" he="95" />和<img file="FDA00009491920400000411.GIF" wi="210" he="107" />接着通过式(24)构造<img file="FDA00009491920400000412.GIF" wi="195" he="93" />d)分别通过式(20)、(21)、(22)计算L<sub>i</sub>(t)、P<sub>i</sub>(t)以及<img file="FDA00009491920400000413.GIF" wi="156" he="84" />e)通过式(19)刷新所估参数<img file="FDA00009491920400000414.GIF" wi="152" he="99" />f)t值增加1,重复上述步骤。
地址 226019 江苏省南通市啬园路9号