System Identification Toolbox    

Initial State

The filter that computes the prediction errors in (3-36) needs to be properly initialized. For input-output (polynomial) models, values of inputs, outputs and predictions prior to time t = 0 are required, and state-space models need the initial state x(0). There are several ways to handle these unknown states. A simple one is to take all unknown values as zero. If the model predictor has slow dynamics (i.e. the poles of CF, or the eigenvalues of A-KC are close to the unit circle), this could have a very bad effect on the parameter estimates. It is particularly pronounced for output-error models, where the noise model cannot be adjusted to handle slow transients form initial conditions.

The toolbox offers a number of options how to deal with the initial state of the predictor. They are handled by the model property InitialState. The unknown state can be treated as a vector of unknown parameters (InitialState = 'Estimate'), they can be set to zero (InitialState = 'Zero'), or estimated by a backwards prediction method (InitialState = 'Backcast'). It can also be fixed to any user defined value. The default value is InitialState = 'Auto', which makes an automatic choice between the options, guided by the estimation data. For details, see idss and idpoly in the "Command Reference" chapter. Basically, the effect of the initial conditions on the prediction errors are tested and if they seem to be negligible, 'zero' is chosen, which gives a fast and efficient algorithm. Otherwise the initial state is estimated or "backcasted." EstimationInfo will contain information about which method was chosen in this case.

Proper handling of the initial state is necessary both when models are estimated, and when predictions and simulations are compared. The commands predict, pe, sim, and compare all offer options for how to deal with this.


  Initial Parameter Values The Estimated Parameter Covariance Matrix