Question: In this project you will identify ARX models (autoregressive with exogenous input), using least- squares, linear regression. The mat-files supplied to you contains the identification
In this project you will identify ARX models (autoregressive with exogenous input), using least- squares, linear regression. The mat-files supplied to you contains the identification data in variable id, and separately the validation data in variable val. Both these variables are objects of type iddata from the system identification toolbox of Matlab, see doc iddata. It is known from prior knowledge that the system does not have any time delay. Requirements: 1. Generate a Matlab code to implement ARX identification explicitly using linear regression, as described in the lecture. Recall that the regressors are y(k-1)...y(k-na),u(k-1).,uk-nb). Your code should work for any values of na and nb. Moreover, implement the simulation of the computed model for the validation data. Keep in mind that for simulation, knowledge about the real outputs of the system is not available, so we can only use previous outputs of the model itself, in particular y(k - i) in the model formula must be replaced by its previously simulated value 9k-i), for i = 1,..., na. Hint: Signals at negative or zero time steps can be taken equal to zero. 2. Plot and examine the data (both identification and validation) supplied. 3. Try to guess a system structure from the step response shapes in the validation data. Set the na and nb orders of the ARX model accordingly, and identify a model with your code, and then with the Matlab arx function (with nk = 1 since the system is known to not have a time delay). Compare the two results. 4. Next, create a set of model structures and use the ***struc functions to find the structure with the best fit on the validation data. Plot the fit on the validation data and compare it to the fit of the pervious model found in item 3). 5. Consider your results. Does the system have the structure you were guessing initially? If the orders automatically identified are larger than what the step response indicates, can you find a reason for that (recalling the discussion in the lecture)? 6. Re-identify a model of the best order found with selstruct, this time using your code, and verify that it gives similar results. Relevant functions from the System Identification Toolbox: arx, struc, arxstruc, selstruc, plot, compare. Remark: When the ident toolbox function has the same name for a function in another toolbox - like in the case of compare, which overloads the MPC toolbox implementation - write e.g.doc ident/compare to get the documentation of the ident variant. See also doc ident for the full documentation of the toolbox
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
