Estimate the parameters of a Box-Jenkins model.
Syntax
th = bj(z,nn)
th = bj(z,nn,'trace')
[th, iter_info]= bj(z,nn,maxiter,tol,lim,maxsize,T,'trace')
Description
The parameters of the Box-Jenkins model structure

are estimated using a prediction error method.
Matrix z contains the output-input data z = [y u] where y and u are column vectors. In the multi-input case, u is a matrix containing the different inputs as columns. nn can be given either as
nn = [nb nc nd nf nk]
or as
nn = thi
In the former case, nb, nc, nd, and nf are the orders of the Box-Jenkins model and nk is the delay. In the latter case, thi is an initial value, given in theta format. See"The System Identification Problem" on page 3-8 in the User's Guide for exact definitions of the model orders.
th is returned with the resulting parameter estimates and estimated covariances, stored in theta format.
The optional variables iter_info, lim, maxiter, maxsize, tol, and T are explained under auxvar.
For multi-input systems, nb, nf, and nk are row vectors with as many entries as there are input channels. Entry number i then described the orders and delays associated with the i-th input.
bj does not support multi-output models. Use state-space model for this case (see canstart, n4sid, and pem)
If a last argument `trace' is supplied, information about the progress of the iterative search for the model will be furnished to the MATLAB command window.
Examples
Here is an example that generates data and stores the results of the startup procedure separately:
B = [0 1 0.5];
C = [1 -1 0.2];
D = [1 1.5 0.7];
F = [1 -1.5 0.7];
th0 = poly2th(1,B,C,D,F,0.1);
e = randn(200,1);
u = idinput(200);
y = idsim([u e],th0);
z = [y u];
thi = bj(z,[2 2 2 2 1],0);
th = bj(z,thi);
present(th)
Algorithm
bj uses essentially the same algorithm as armax with modifications to the computation of prediction errors and gradients.
See Also
armax, auxvar, oe, pem, theta
[ Previous | Help Desk | Next ]