pem
Prediction error minimization for refining linear and nonlinear models
Description
updates the parameters of an initial model sys
= pem(data
,init_sys
)init_sys
to fit the estimation
data in data
. data
can be a timetable, a
comma-separated pair of matrices, or a data object.
The function uses prediction-error minimization algorithm to update the parameters of the initial model. Use this command to refine the parameters of a previously estimated model.
Examples
Input Arguments
Output Arguments
Algorithms
PEM uses numerical optimization to minimize the cost function, a weighted norm of the prediction error, defined as follows for scalar outputs:
where e(t) is the difference between the measured output and the predicted output of the model. For a linear model, the error is defined as:
where e(t) is a vector and the cost function is a scalar value. The subscript N indicates that the cost function is a function of the number of data samples and becomes more accurate for larger values of N. For multiple-output models, the previous equation is more complex. For more information, see chapter 7 in System Identification: Theory for the User, Second Edition, by Lennart Ljung, Prentice Hall PTR, 1999.
Alternative Functionality
You can achieve the same results as pem
by using dedicated estimation
commands for the various model structures. For example, use ssest(data,init_sys)
for estimating state-space models.
Version History
Introduced before R2006a