Main Content

Estimate Process Models Using the App

Before you can perform this task, you must have

  1. In the System Identification app, select Estimate > Process models to open the Process Models dialog box.

    To learn more about the options in the dialog box, click Help.

  2. If your model contains multiple inputs or multiple outputs, you can specify whether to estimate the same transfer function for all input-output pairs, or a different transfer function for each. Select the input and output channels in the Input and Output fields. The fields only appears when you have multiple inputs or outputs. For more information, see Estimating Multiple-Input, Multi-Output Process Models.

  3. In the Model Transfer Function area, specify the model structure using the following options:

    • Under Poles, select the number of poles, and then select All real or Underdamped.


      You need at least two poles to allow underdamped modes (complex-conjugate pair).

    • Select the Zero check box to include a zero, which is a numerator term other than a constant, or clear the check box to exclude the zero.

    • Select the Delay check box to include a delay, or clear the check box to exclude the delay.

    • Select the Integrator check box to include an integrator (self-regulating process), or clear the check box to exclude the integrator.

    The Parameter area shows as many active parameters as you included in the model structure.


    By default, the model Name is set to the acronym that reflects the model structure, as described in Process Model Structure Specification.

  4. In the Initial Guess area, select Auto-selected to calculate the initial parameter values for the estimation. The Initial Guess column in the Parameter table displays Auto. If you do not have a good guess for the parameter values, Auto works better than entering an ad hoc value.

  5. (Optional) If you approximately know a parameter value, enter this value in the Initial Guess column of the Parameter table, and press the Enter key. The estimation algorithm uses this value as a starting point. If you know a parameter value exactly, enter this value in the Initial Guess column, and press the Enter key. Select the corresponding Known check box in the table to fix its value.

    If you know the range of possible values for a parameter, enter these values into the corresponding Bounds field to help the estimation algorithm. Press the Enter key after you specify the values.

    For example, the following figure shows that the delay value Td is fixed at 2 s and is not estimated.

  6. In the Disturbance Model drop-down list, select one of the available options. For more information about each option, see Disturbance Model Structure for Process Models.

  7. In the Focus drop-down list, select how to weigh the relative importance of the fit at different frequencies. For more information about each option, see Assigning Estimation Weightings.

  8. In the Initial condition drop-down list, specify how you want the algorithm to treat initial states. For more information about the available options, see Specifying Initial Conditions for Iterative Estimation Algorithms.


    If you get a bad fit, you might try setting a specific method for handling initial states, rather than choosing it automatically.

  9. In the Covariance drop-down list, select Estimate if you want the algorithm to compute parameter uncertainties. Effects of such uncertainties are displayed on plots as model confidence regions.

    To omit estimating uncertainty, select None. Skipping uncertainty computation might reduce computation time for complex models and large data sets.

  10. In the Model Name field, edit the name of the model or keep the default. The name of the model should be unique in the Model Board.

  11. To view the estimation progress, select the Display Progress check box. This opens a progress viewer window in which the estimation progress is reported.

  12. Click Regularization to obtain regularized estimates of model parameters. Specify the regularization constants in the Regularization Options dialog box. To learn more, see Regularized Estimates of Model Parameters.

  13. Click Estimate to add this model to the Model Board in the System Identification app.

  14. To stop the search and save the results after the current iteration has been completed, click Stop Iterations. To continue iterations from the current model, click the Continue button to assign current parameter values as initial guesses for the next search.

Assigning Estimation Weightings

You can specify how the estimation algorithm weighs the fit at various frequencies. In the app, set Focus to one of the following options:

  • Prediction — Uses the inverse of the noise model H to weigh the relative importance of how closely to fit the data in various frequency ranges. Corresponds to minimizing one-step-ahead prediction, which typically favors the fit over a short time interval. Optimized for output prediction applications.

  • Simulation — Uses the input spectrum to weigh the relative importance of the fit in a specific frequency range. Does not use the noise model to weigh the relative importance of how closely to fit the data in various frequency ranges. Optimized for output simulation applications.

  • Stability — Behaves the same way as the Prediction option, but also forces the model to be stable. For more information about model stability, see Unstable Models.

  • Filter — Specify a custom filter to open the Estimation Focus dialog box, where you can enter a filter, as described in Simple Passband Filter or Defining a Custom Filter. This prefiltering applies only for estimating the dynamics from input to output. The disturbance model is determined from the estimation data.

Next Steps

  • Validate the model by selecting the appropriate check box in the Model Views area of the System Identification app. For more information about validating models, see Validating Models After Estimation.

  • Refine the model by clicking the Value —> Initial Guess button to assign current parameter values as initial guesses for the next search, edit the Name field, and click Estimate.

  • Export the model to the MATLAB® workspace for further analysis by dragging it to the To Workspace rectangle in the System Identification app.

Related Topics