主要内容

arxstruc

计算单输出ARX模型的损失函数

语法

V = arxstruc(ze,zv,NN)

参数

估计数据集可以iddataidfrd对象。

zv

验证数据集可以iddataidfrd对象。

神经网络

矩阵定义了不同arx模型结构的数量。每一行神经网络形式为:

Nn = [na nb nk]

描述

请注意

使用arxstruc仅适用于单输出系统。arxstruc万博1manbetx支持单输入和多输入系统。

V = arxstruc(ze,zv,NN)返回V,其中第一行包含损失函数。其余的行V包含的转置神经网络,使阶数和延迟正好在相应损失函数的下方给出。最后一列V中的数据点数

输出参数V最好使用selstruc.根据所获得的信息选择合适的模型结构v通常使用selstruc

例子

全部折叠

创建用于生成数据的ARX模型。

A = [1 -1.5 0.7];B = [0 1 0.5];m0 = idpoly(A,B);

产生随机输入和加性噪声信号。

U = iddata([],idinput(400,)苏格兰皇家银行的));E = iddata([],0.1*randn(400,1));

使用定义的输入和错误信号模拟模型输出。

Y = sim(m0,[u e]);Z = [y,u];

生成用于估计的模型顺序组合。指定延迟为1对于所有型号,和型号顺序范围之间1而且5na而且

NN = struc(1:5,1:5,1);

估计ARX模型并计算每种模型订单组合的损失函数。输入数据被分成估计和验证数据集。

V = arxstruc(z(1:200),z(201:400),NN);

选择最适合验证数据的模型顺序。

order = selstruc(V,0);

估计所选顺序的ARX模型。

M = arx(z,阶);

创建评估和验证数据集。

负载co2data;Ts = 0.5;采样时间为0.5分钟ze = iddata(Output_exp1,Input_exp1,Ts);zv = iddata(Output_exp2,Input_exp2,Ts);

生成模型顺序组合:

  • na2:4

  • 2:5对于第一个输入,和14对于第二个输入。

  • nk1:4对于第一个输入,和0对于第二个输入。

NN = struc(2:4,2:5,[1 4],1:4,0);

为每个模型订单组合估计一个ARX模型。

V = arxstruc(ze,zv,NN);

选择最适合验证数据的模型顺序。

order = selstruc(V,0);

估计所选顺序的ARX模型。

M = arx(ze,order);

提示

每个人而且zv是一个iddata对象,它包含输出-输入数据。频域数据和idfrd还支持对象。万博1manbetx定义的每个模型结构的模型神经网络是否使用数据集进行估计.当应用于验证数据集时,计算这些模型的损失函数(预测误差的归一化平方和)zv.数据集而且zv大小不必相等。然而,它们可能是相同的集合,在这种情况下,计算速度更快。

R2006a之前介绍过