[系统辨识理论(笔记)]

在研究分析的过程中,经常要对一些研究对象构建数学模型来进行分析。建模时通常有两种途径,一种是运用理论分析的方法推导出数学模型,比如力学上最基本弹簧振子模型;另一种是依托于已经成熟的各类的软件,比如机械制造领域的CAD/CAE或其他的各种力学分析软件,不过这些软件也是将数学理论封装在后台进行运行。在学校老师们多提倡用前一个方法。但是实际中遇到的研究对象千变万化,而且复杂程度不尽相同,许多情况下很难用理论分析的方法推导出准确的数学模型,有时只知道数学模型的一般形式及部分参数,有时甚至连数学模型的一般形式都不知道。因此怎样确定系统的数学模型及参数———即系统辨识问题就自然被提了出来。
对于许多领域,都需要用到系统辨识。比如自己研究生期间做的课题需要用到人体的相关生物力学参数,许多之前用来确定机械部件的力学参数的方法就不适用了,最典型的就是不可能用敲模态的方法去敲人体;另外在进行各种情形下的自适应控制时,要不断估计系统的模型参数,自适应控制系统是辨识与控制相结合的一个范例。
总的来说,系统辨识其实就是根据系统的试验数据来确定系统的数学模型。针对不同的模型,不同的场合,运用的方法也不同。

一:数学模型的分类

数学模型的分类有很多种,常见的是按连续与离散、定常与时变、线性与非线性分类。

二:常见数学模型的表示

1.离散脉冲响应函数
y(k)=(∑i=0∞g(i)z−i)u(k)y(k)=(\sum_{i=0}^{\infty}g(i)z^{-i})u(k)y(k)=(∑i=0∞​g(i)z−i)u(k)
u(k)u(k)u(k)为输入,zzz为时延因子,z−1u(k)=u(k−1)z^{-1}u(k)=u(k-1)z−1u(k)=u(k−1)
上式是线性系统对于单位脉冲序列产生的输出,对于稳态系统,则有
y(k)=(∑i=0Nsg(i)z−i)u(k)y(k)=(\sum_{i=0}^{N_{s}}{g(i)z^{-i}})u(k)y(k)=(∑i=0Ns​​g(i)z−i)u(k)

B(z−1)=∑i=0Nsg(i)z−iB(z^{-1})=\sum_{i=0}^{N_s}g(i)z^{-i}B(z−1)=∑i=0Ns​​g(i)z−i
对于随机系统,考虑噪声的影响,则有
y(k)=B(z−1)⋅u(k)+e(k)y(k)=B(z^{-1})\cdot u(k)+e(k)y(k)=B(z−1)⋅u(k)+e(k)
e(k)e(k)e(k)为噪声项。
2.线性差分方程(自回归滑动平均模型/ARMA模型)
y(k)+a1y(k−1)+⋅⋅⋅+any(k−n)=b0u(k)+b1u(k−1)+⋅⋅⋅+bnu(k−n)y(k)+a_{1}y(k-1) + \cdot\cdot\cdot +a_ny(k-n)=b_0u(k)+b_1u(k-1)+ \cdot\cdot\cdot +b_nu(k-n)y(k)+a1​y(k−1)+⋅⋅⋅+an​y(k−n)=b0​u(k)+b1​u(k−1)+⋅⋅⋅+bn​u(k−n)
3.状态空间模型
线性时不变连续系统的状态空间描述为
{x˙(t)=Ax(t)+Bu(t)y(t)=Cx(t)\left \{ \begin{array}{r c l} \dot{x}(t) & = & Ax(t) + Bu(t) \\ y(t) & = & Cx(t) \\ \end{array} \right .{x˙(t)y(t)​==​Ax(t)+Bu(t)Cx(t)​
其中x(t)∈Rnx(t)\in R^nx(t)∈Rn为系统的状态变量,u(t)∈Rmu(t)\in R^mu(t)∈Rm为系统的输入量,y(t)∈Rry(t)\in R^ry(t)∈Rr是系统的输出量,A∈Rn×nA\in R^{n\times n}A∈Rn×n为系统矩阵,B∈Rn×mB\in R^{n\times m}B∈Rn×m为输入矩阵,C∈Rr×nC\in R^{r\times n}C∈Rr×n为输出矩阵
线性时不变离散系统的状态空间模型为
{x(k+1)=Ax(k)+Bu(k)y(k)=Cx(k)\left \{ \begin{array}{r c l} x(k+1) & = & Ax(k) + Bu(k) \\ y(k) & = & Cx(k) \\ \end{array} \right .{x(k+1)y(k)​==​Ax(k)+Bu(k)Cx(k)​
其中x(k)∈Rnx(k)\in R^nx(k)∈Rn为系统的状态变量,u(k)∈Rmu(k)\in R^mu(k)∈Rm为系统的输入量,y(k)∈Rry(k)\in R^ry(k)∈Rr是系统的输出量,A∈Rn×nA\in R^{n\times n}A∈Rn×n为系统矩阵,B∈Rn×mB\in R^{n\times m}B∈Rn×m为输入矩阵,C∈Rr×nC\in R^{r\times n}C∈Rr×n为输出矩阵

三:系统辨识常用的误差准则

误差准则常被表示为误差的泛函数,即
J(θ)=∑k=1Nf(ε(k))J(\theta)=\sum_{k=1}^Nf(\varepsilon(k))J(θ)=∑k=1N​f(ε(k))
式中,f(∙)f(\bullet)f(∙)为ε(k)\varepsilon(k)ε(k)的函数,ε(k)\varepsilon(k)ε(k)是定义在区间(0,N)(0,N)(0,N)上的误差函数,一般指模型与实际系统的误差。
其中,
f(ε(k))=ε2(k)f(\varepsilon(k))=\varepsilon^2(k)f(ε(k))=ε2(k)
误差ε(k)\varepsilon(k)ε(k)的确定分为输出误差准则、输入误差准则和广义误差准则。其实实际中最常用的是输出误差准则,这个其实很好理解,如图当实际系统的输出和模型的输出分别为y(k)y(k)y(k)和ym(k)y_{m}(k)ym​(k)时,输出误差为
ε(k)=y(k)−ym(k)\varepsilon(k)=y(k)-y_{m}(k)ε(k)=y(k)−ym​(k)

四:系统辨识常用的分类

系统辨识的分类方法很多,常见的是离线辨识与在线辨识。
1.离线辨识
顾名思义,离线辨识是在系统模型构建好、阶数确定后、数据获得后,用最小二乘、极大似然或其他估计方法对数据进行集中处理。这种方法的优点是参数估计值的精度较高,对于计算没有时间上的限制;缺点是需要存储大量的数据,预算量也大。
2.在线辨识
对于一些不能中断运行的系统,离线辨识显然不在适用,这时就要用在线辨识。
一般情况下,在线辨识时,系统的模型结构和阶数是确定好的,当获得一部分新的输入、输出数据之后,在线估计采用递推方法进行处理,从而得到模型新的估计值。由于在线辨识是在某个初值下不断利用信息进行递推运算修正模型参数的估计值,因此这就要求计算机在一个采样周期内,能够完成一次递推运算,这对递推算法也提出了收敛速度要足够快的要求。在线辨识的优点是存储量小,缺点是参数估计的精度较差,要求足够高的计算速度,对设备要求的算力要求较高。

五:系统辨识的内容和步骤

系统辨识理论(笔记)相关推荐

  1. Shannon理论——笔记1

    Shannon理论--笔记1 目录 Shannon理论--笔记1 引言 概略 完善保密性 熵 熵的性质 伪密钥和唯一解距离 预备知识 伪密钥 唯一解距离 乘积密码体制 引言 我们知道有这样几个评价密码 ...

  2. 高等数学 · 空间解析几何与向量代数理论笔记小结

    空间解析几何与向量代数理论笔记小结 一.向量代数 1. 向量的定义 2. 向量的模 3. 基本单位向量 4. 向量的方向角与方向余弦 5. 向量的坐标表示 6. 向量的线性运算 7. 向量的数量积 8 ...

  3. 系统辨识理论及应用_控制理论学习书单推荐(值得一读)

    经 System control 授权,基于控制理论学习书单整理改编. 提起系统与控制领域的学习,经常被谈论到的就是,对于刚接触这个领域的初学者总会在各种控制理论中迷茫,有的甚至直接劝退.面对众多理论 ...

  4. 数字IC设计bilibili-Designer Compiler的理论笔记+实操

    文章目录 理论部分 转眼已经进入工作半年了,然而IC设计方面的进步,却很少很少,DFT总算大致理论flow走了一遍,但细枝末节,也困难重重,不免让人灰心.今天开始,我将每周加速IC设计方面的理论与实践 ...

  5. 软件详细设计说明书_软件测试的基本理论 笔记

    一.开发与测试流程理论 ##1.软件开发阶段划分 ###需求分析 根据客户的要求,清楚了解客户需求中的产品功能.性能.界面和具体规格等,然后进行分析,确定软件产品所要达到的目标. 需求规格说明书 ## ...

  6. 系统辨识理论及应用_企业战略分析的理论工具

    按照企业战略规划的3+1模型,企业战略规划分为四个步骤:战略分析.目标选择.路径选择.战略实施.今天学习第一部分:战略分析.战略分析分为两个部分:外部分析和内部分析. 图片来源于网络 一.外部分析 外 ...

  7. .NET-9.乱七八糟的理论笔记(概念,思想)

    知识笔记 前言 一.数据库 二.其他 github,gitlab,gitee的区别 RBAC权限模式 PowerShell 三..NET 面试总结 四.数据库的面试总结(Mysql) 复习 技巧 前言 ...

  8. 最优化理论笔记及期末复习(《数值最优化》——高立)

    目录 一.预备知识 二.无约束最优化方法的基本结构 三.凸集和凸函数 四.负梯度方法和Newton型方法 五.共轭梯度法 六.约束最优化问题的最优性理论 七.罚函数方法 八.期末复习 8.1 知识点复 ...

  9. 《孤尽班T31-01-架构理论笔记》

    孤尽,阿里巴巴技术大拿,开课吧CTO 当初得知孤尽大大会组建一个"Java学习班"的 时候,就期待能够加入其中,学一些"够牛B"的技术,从最开始的差不多600人 ...

最新文章

  1. Nature综述:真菌的多样性:真菌的高通量测序及鉴定
  2. 异常处理——zookeeper启动成功,但是zkfcunexpected error, closing socket connection and attempting reconnectjava
  3. android开发出现的错误,android 开发 错误集锦
  4. Delphi控件的“拿来主义”
  5. 1079 Total Sales of Supply Chain(甲级)
  6. python删除数据库_用Python删除Cosmos数据库文档
  7. Tunnels 状压DP+BFS
  8. 将Vim打造成Python快速开发环境(一)
  9. 每周送新书:Python数据分析、SSM框架、Redis深度历险
  10. 图像匹配之归一化积相关灰度匹配
  11. MyBatis创建视图
  12. 视频监控安防平台-国标35114(GB35114)A级检测内容
  13. 程序员眼中的古典名画
  14. cad卸载_IT运维:CAD卸载不彻底,无法重装?
  15. 关于先有鸡还是先有蛋,终于有正确答案了 1
  16. ActiveReportsJS3.0 详解 ActiveReportsJS3.X
  17. 【160313 18:00】四则运算 2 的单元测试
  18. cssK中的常用单词之相对,绝对
  19. 机器人genghis_iRobot的智慧家居:从扫地机器人和擦地机器人的联动开始
  20. 【原创】常用元器件(电阻)选型之阻值有多少-cayden20220910

热门文章

  1. js mouseover/mouseout不停地循环
  2. 这写孩子对计算机游戏上瘾了,儿童玩电脑游戏的危害
  3. C语言——选择控制结构 寻找中位数v1.0编写一个函数返回三个整数中的中间数。函数原型:int mid(int a, int b, int c);功能是返回a,b,c三数中大小位于中间的一个数。
  4. 那些热门的计算机语言都做些什么
  5. 深圳AI电销智能机器人供应批发采购
  6. 儿童班基础轮滑教学计划
  7. 计算机专业申请phd美国,美国计算机专业博士申请个人陈述范文
  8. 17天 GRE单词——实践日志(更新中)
  9. 热板焊接在汽车内饰件上的应用
  10. 2017会考计算机知识点,2017地理会考基础知识点归纳