主要内容

估计状态空间模型

使用实时编辑器中的时间或频率数据估计状态空间模型

描述

估计状态空间模型Task允许您使用时间或频率数据交互式地估计和验证状态空间模型。您可以定义和改变模型结构,并指定可选参数,如初始条件处理和搜索方法。任务自动生成MATLAB®为您的活动脚本编写代码。有关实时编辑器任务的详细信息,请参见在活动脚本中添加交互式任务

状态空间模型是使用状态变量通过一组一阶微分方程或差分方程来描述系统的模型,而不是一个或多个n阶微分方程或差分方程。状态变量可以从测量的输入-输出数据中重建,但在实验过程中不测量状态变量本身。

状态空间模型结构是快速估计的一个很好的选择,因为它只需要指定一个输入,即模型顺序。有关状态空间估计的更多信息,请参见什么是状态空间模型?

估计状态空间模型任务的独立性比较一般系统识别应用。使用系统识别应用程序,当您想计算和比较多个模型结构的估计。

首先,将包含输入和输出数据的实验数据加载到MATLAB工作区中,然后将该数据导入到任务中。然后指定模型结构进行估计。该任务为您提供了控件和图表,帮助您对不同的模型参数进行实验,并比较每个模型的输出与测量值的匹配程度。

相关功能

代码估计状态空间模型generate使用以下函数。

该任务估计中的难点状态空间模型。

打开任务

要添加估计状态空间模型任务到MATLAB编辑器中的实时脚本:

  • 住编辑器选项卡上,选择任务>估计状态空间模型

  • 在脚本中的代码块中,键入相关的关键字,例如状态空间,或估计.选择估计状态空间模型从建议的命令补全。

例子

全部展开

使用估计状态空间模型Live Editor Task用于估计状态空间模型,并将模型输出与测量数据进行比较。

打开此示例以查看包含该任务的预配置脚本。

设置数据

加载测量数据iddata1进入你的MATLAB工作区。

负载iddata1z1z1
z1 = 300个样本的时域数据集。采样时间:0.1秒输出单位(如指定)y1输入单位(如指定)u1

向任务中导入数据

选择数据节中,设置数据类型数据对象并设置评估对象z1

数据对象包含输入和输出变量名以及采样时间,因此您不必指定它们。

使用默认设置估计模型

检查模型结构和可选参数。

指定模型结构节中,将工厂顺序设置为其默认值4模型在连续时域内。本节参数下面的方程显示了指定的结构。

指定可选参数节中,参数显示状态空间估计的默认选项。

方法执行任务住编辑器标签使用运行.一个图显示估计数据、估计模型输出和拟合百分比。

参数设置实验

试验一下参数设置,看看它们是如何影响贴合的。

例如,在指定模型结构,估计干扰方框被选中,那么扰动矩阵K在方程中。如果你清理了盒子,那K词就消失了。运行更新后的配置,并查看适合度如何变化。

改变工厂订单设置为在范围内选择最佳值.默认设置为1:10

当你运行模型时,a型号顺序选择图显示了每个状态对模型动态行为的贡献。使用其他参数的初始任务设置,该图显示模型顺序的推荐值为2。

通过单击接受此建议应用,看看这个变化是如何影响合身度的。

生成代码

若要显示任务生成的代码,请单击在参数部分的底部。您看到的代码反映了任务的当前参数配置。

使用单独的估计和验证数据,这样您就可以验证估计的状态空间模型。

打开此示例以查看包含该任务的预配置脚本。

设置数据

负载测量数据iddata1进入你的MATLAB工作空间并检查它的内容。

负载iddata1z1z1
z1 = 300个样本的时域数据集。采样时间:0.1秒输出单位(如指定)y1输入单位(如指定)u1

提取输入和输出度量值。

U = z1.u;Y = z1.y;

将数据分成两组,一半用于估计,一半用于验证。原始数据集有300个样本,所以每个新数据集有150个样本。

U_est = u(1:50 0);U_val = u(151:300);Y_est = y(1:50 0);Y_val = y(151:300);

向任务导入数据

选择数据节中,设置数据类型时间.集样品时间0.1秒,这是原始样本的时间iddata对象z1.选择适当的数据集进行估计和验证。

估计和验证模型

这个例子使用实时编辑器任务估计状态空间模型建议模型顺序为2。将该值用于工厂订单.其他参数保持默认值。请注意,输入通道不是指输入数据集,而是指输入数据集中的通道索引,对于单输入系统总是这样u1

方法执行任务住编辑器标签使用运行.执行任务将创建两个图。第一个图显示估计结果,第二个图显示验证结果。

与估计数据的拟合程度稍差于使用实时编辑器任务估计状态空间模型.当前示例中的估计只有用于估计模型的一半数据。验证数据的拟合,更普遍地代表了模型的优度,比估计数据的拟合更好。

参数

选择数据

该任务接受及时统一采样的数值测量值。输入和输出信号可以包含多个通道。数据可以打包为数值数组(用于时间频率)或在数据对象中,例如iddataidfrd对象。

所选的数据类型决定是否必须指定其他参数。

  • 时间——指定样品时间而且开始时间在你选择的时间单位内。

  • 频率——指定频率通过在MATLAB工作空间中选择频率矢量的变量名。指定频率矢量的单位。指定样品时间在几秒钟内。

  • 数据对象—数据对象中已经包含时间采样或频率采样信息,无需指定其他参数。

从MATLAB工作区选项中选择输入和输出变量名。在以下情况使用这些参数数据类型时间频率

从MATLAB工作区选项中选择数据对象变量名。当使用此参数时数据类型数据对象

从工作区选项中选择输入和输出变量名。在以下情况使用这些参数数据类型时间频率.指定验证数据是可选的,但推荐使用。

从MATLAB工作区选项中选择数据对象变量名。当使用此参数时数据类型数据对象.指定验证数据是可选的,但推荐使用。

指定模型结构

该任务允许您为要估计的模型的顺序指定单个值或一组值。

  • 指定的值—明确指定模型的顺序。

  • 在范围内选择最佳值—指定取值范围,例如1:10.当您运行该任务时,汉克尔奇异值图将可视化估计模型中每个状态的相对能量贡献,并推荐再现临界动态行为的最低阶。继续执行此建议或选择另一个订单选择的顺序.点击应用接受样板订单并继续生产。

选择连续时间或离散时间模型。

选择此选项来估计扰动模型。选择此选项时,模型方程将更新以显示K矩阵和e术语。

对于每个输入通道,为赋值输入延迟而且直通的

  • 输入通道—选择输入通道。输入通道总是这样的形式u,在那里输入的第Th通道u

  • 输入延迟-输入输入延迟的样本数量(离散时间模型)或时间单位的数量(连续时间模型)的通道。例如,为时间单位为的连续时间系统指定0.2秒的输入延迟毫秒,输入200

  • 直通的-选择此选项来估计从输入到输出的通道馈通。选择此选项时,模型方程将更新以显示术语。

指定可选参数

拟合焦点是指在估计过程中损失函数中要最小化的误差。

  • 预测-将测量输出与预测输出之间的预测误差提前一步最小化。这种估计方法的重点是为估计输入和输出产生一个良好的预测器模型。预测焦点通常会产生最好的估计结果,因为它同时使用输入和输出测量,因此可以考虑干扰。

  • 模拟-最大限度地减少测量和模拟输出之间的误差。这种估计方法侧重于产生一个模拟模型响应,该模型响应与估计输入和输出有很好的拟合。模拟焦点通常最适合用于验证,特别是对于原始估计不使用的数据集。

当您希望为初始化模型状态选择特定的方法时,请设置此选项。的默认设置汽车,软件根据估计数据选择方法。的选择是:

  • —初始状态设置为0。

  • 估计—初始状态被视为一个独立的估计参数。

  • 展望-初始状态估计使用最佳最小二乘拟合。

输入间采样是输入数据的一个属性。该任务在估计连续模型时使用此属性。指定输入Intersampling当数据类型为时时间频率.如果你正在使用iddata对象时,该对象已经包含了间采样信息。这个属性的选项是:

  • 零级举行-样本间分段常数输入信号

  • 三角形近似-样本之间分段线性的输入信号,也称为一阶保持

  • 带宽有限—输入信号在奈奎斯特频率以上功率为零

  • 汽车-对于每次迭代,软件循环使用这些方法,直到找到导致估计成本降低的第一个方向下降。

  • 高斯牛顿-子空间高斯-牛顿最小二乘搜索。

  • Levenberg-Marquardt- Levenberg-Marquardt最小二乘搜索。

  • 自适应高斯牛顿自适应子空间高斯牛顿搜索。

  • 梯度搜索-最速下降最小二乘搜索。

设置错误最小化期间的最大迭代次数。当迭代停止时Max。迭代达到或满足另一个停止标准,例如宽容

当预期改善的百分比小于宽容,迭代停止。

当您希望对估计模型时任务最小化的损失函数应用加权预过滤器时,请设置此选项。当您选择一个选项时,您还必须选择工作区中包含筛选器信息的相关变量。可用的选项取决于数据的域。

加权预滤器 数据域 过滤信息
没有过滤 时间和频率
通频带 时间和频率 通频带范围,指定为1 × 2行向量或n-by-2矩阵n是通带的个数。
线性时不变滤波器 时间和频率 SISO LTI模型。
频率权重向量 频率 频率权重,指定为与频率向量长度相同的列向量。
频率响应大小的倒数 频率响应 加权滤波器为 1 / | G ω | ,在那里Gω)为复频响数据。仅限SISO和SIMO系统。
频率响应大小的平方根的倒数 频率响应 加权滤波器为 1 / | G ω | .仅限SISO和SIMO系统。

例如,假设您正在使用SISO频域数据进行估计,并且在MATLAB工作空间中,您有一个列向量W其中包含预滤波器的频率权重。在任务中,选择加权预滤波器>频率权重向量还有变量W

可视化的结果

绘制模型输出与原始测量数据的比较,以及拟合百分比。如果您有单独的验证数据,则第二个图将验证输入数据的模型响应与验证数据集的测量输出进行比较。

版本历史

R2019b引入