System Identification Toolbox

 

System Identification Toolbox

基于输入-输出数据创建线性和非线性动态系统模型

System Identification Toolbox 提供用于动态系统建模、时间序列分析和预测的 MATLAB 函数、Simulink 模块和 App。您可以了解测得变量之间的动态关系,以使用时域或频域数据创建连续或离散时间的传递函数、过程模型和状态空间模型。您可以使用 AR、ARMA 及其他线性和非线性自回归建模方法来预测时间序列。

本工具箱支持您通过 Hammerstein-Wiener 和非线性 ARX 模型使用机器学习方法(如高斯过程 (GP)、支持向量机 (SVM) 和其他表示法)来估计非线性系统动态特性。您也可以使用深度学习来创建神经常微分方程 (ODE) 模型来捕获非线性系统动态特性。本工具箱可让您执行灰箱系统辨识以估计用户定义模型的参数。您可以将辨识的模型集成到 Simulink 中进行快速仿真,以实现控制设计以及诊断和预后应用。

您可以使用扩展或无迹卡尔曼滤波器和粒子滤波器进行在线参数和状态估计,用于自适应控制、故障检测和软测量应用。该工具箱支持您为在线估计算法生成 C/C++ 代码以部署到嵌入式设备。

系统辨识器

使用系统辨识器以交互方式估计系统的线性和非线性模型。导入和预处理时域和频域数据。辨识和比较模型,分析其属性,并根据测试数据集验证模型。

线性系统辨识

根据测得的时域或频域数据估计线性模型,用于控制设计、系统仿真和预测等应用。创建连续或离散时间的传递函数、过程模型、状态空间模型和多项式模型。使用频谱分析估计频率响应模型。计算并可视化在时域和频域中参数不确定性对模型响应的影响。

非线性系统辨识

通过估计非线性 ARX 和 Hammerstein-Wiener 模型来捕获系统的非线性动态特性。使用非线性 ARX 模型将自回归模型与由小波网络、树分区和 S 型网络表示的动态非线性结合起来。此外,指定回归量以捕获系统的物理特性,或为非线性 ARX 模型自动选择回归量的最佳子集。使用 Hammerstein-Wiener 模型来估计一个线性系统的输入和输出的非线性。

基于人工智能的非线性系统辨识

将机器学习和深度学习方法与非线性 ARX 和 Hammerstein-Wiener 模型相结合,以描述系统的非线性动态特性。借助 Statistics and Machine Learning ToolboxDeep Learning Toolbox,使用支持向量机 (SVM)、树集成、高斯过程和前馈网络来表示非线性。还可以使用神经 ODE 创建基于深度学习的非线性状态空间模型。

灰箱系统辨识

使用线性或非线性微分方程、差分方程或状态空间系统对系统建模。根据测得的输入-输出数据估计灰箱模型的指定参数,以捕获系统的动态特性。

时间序列模型

估计时间序列或信号模型以对从系统测得的数据进行拟合。使用线性模型(如 AR、ARMA、ARIMA 和状态空间模型)或非线性模型(如非线性 ARX)预测时间序列。

在线估计

使用递归算法实时估计系统模型,该算法会在有新数据可用时更新模型参数。使用线性、扩展或无迹卡尔曼滤波器以及粒子滤波器估计系统状态。

部署

使用代码生成为在线故障检测、降阶建模 (ROM) 以及诊断和预测等应用部署估计的模型、状态估计器和递归模型。分别使用 Simulink CoderSimulink PLC Coder 为在 Simulink 中实现的模型生成 C/C++ 代码和 IEC 61131-3 结构化文本。使用 MATLAB Coder 在 MATLAB 中生成 C/C++ 代码。或者,使用 MATLAB Compiler 生成独立应用。

“通过使用 Optimization Toolbox 和 System Identification Toolbox 改进我们现有的 AFR 控制系统的性能,我们显著减少了废气的产生。在对我们正在开发的发动机进行评估时,我们发现在某些条件下 NOx 和 CO 排放至少减少了一半。”

Hiroshi Katoh,日产汽车公司