Compute and compare loss functions for single-output ARX models
V = arxstruc(ze,zv,NN)
V = arxstruc(ze,zv,NN,maxsize)
Estimation data set can be
Validation data set can be
Matrix defines the number of different ARX-model structures.
Each row of
NN is of the form:
nn = [na nb nk]
Specifies the maximum number of elements in a segment when input-output data is split into segments.
If larger matrices are needed, the software will use loops for
calculations. Use this option to manage the trade-off between memory
management and program execution speed. The original data matrix must
be smaller than the matrix specified by
maxsize must be a positive integer.
V = arxstruc(ze,zv,NN) returns
which contains the loss functions in its first row. The remaining
V contain the transpose of
so that the orders and delays are given just below the corresponding
loss functions. The last column of
V contains the
number of data points in
V = arxstruc(ze,zv,NN,maxsize) uses the
additional specification of the maximum data size.
with the same interpretation as described for
easy generation of typical
The output argument
V is best analyzed using
The selection of a suitable model structure based on the information
v is normally done using
This example uses the simulation data from a second-order
with additive noise. The data is split into two parts, where one part
is the estimation data and the other is the validation data. You select
the best model by comparing the output of models with orders ranging
between 1 and 5 with the validating data. All models have an input-to-output
delay of 1.
% Create an ARX model for generaing data: A = [1 -1.5 0.7]; B = [0 1 0.5]; m0 = idpoly(A,B); % Generate a random input signal: u = iddata(,idinput(400,'rbs')); e = iddata(,0.1*randn(400,1)); % Simulate the output signal from the model m0: y = sim(m0, [u e]); z = [y,u]; % analysis data NN = struc(1:5,1:5,1); V = arxstruc(z(1:200),z(201:400),NN); nn = selstruc(V,0); m = arx(z,nn);
zv is an
containing output-input data. Frequency-domain data and
are also supported. Models for each of the model structures defined
NN are estimated using the data set
The loss functions (normalized sum of squared prediction errors) are
then computed for these models when applied to the validation data
zv. The data sets
not be of equal size. They could, however, be the same sets, in which
case the computation is faster.