Linear System Identification | System Identification, Part 2

Sdílet
Vložit
  • čas přidán 24. 07. 2024
  • Learn how to use system identification to fit and validate a linear model to data that has been corrupted by noise and external disturbances.
    Watch the full series on System Identification: • System Identification
    Noise and disturbances can make it difficult to determine if the error between an identified model and the real data comes from incorrectly modeled essential dynamics, data influenced by a random disturbance process, or some combination of the two.
    Discover how to account for the random disturbances by fitting a first-order autoregressive moving average (ARMA1) model to the disturbance path. This can give you a better overall system model fit and confidence that the essential dynamics were captured correctly.
    Check out these other links:
    - All of the references below are displayed in a journey on Resourcium: bit.ly/382c5BQ
    - Introduction to System Identification: • Introduction to System...
    - System Identification Overview: bit.ly/3LiDlKE
    - Linear Model Identification Basics: bit.ly/3OA7WFL
    - What is Residual Analysis? bit.ly/3xR3dJH
    - resid command in MATLAB: bit.ly/3Keh0fW
    - Goodness of fit: bit.ly/3vfrF65
    --------------------------------------------------------------------------------------------------------
    Get a free product trial: goo.gl/ZHFb5u
    Learn more about MATLAB: goo.gl/8QV7ZZ
    Learn more about Simulink: goo.gl/nqnbLe
    See what's new in MATLAB and Simulink: goo.gl/pgGtod
    © 2022 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc.
    See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.
  • Věda a technologie

Komentáře • 27

  • @joez9162
    @joez9162 Před 2 lety +16

    I think what was most interesting for me was where you decided the model was as good as it was going to get and how you went about making that determination. With a fit percentage in that range I would have ended up just trying every combination of model order and zeros and assumed I wasn’t getting something right or that the model wouldn’t be usable.

  • @linasogc21
    @linasogc21 Před 2 lety +6

    Big fan. Brian taught me controls, Matlab helped me understand them. Although Matlab rejected me during my interview, I'm still working at an OEM today using MATLAB products

  • @ahmadnmf
    @ahmadnmf Před 2 lety +3

    As always, awesome explanation, could not wait for the nonlinear model identification videos. See you soon.

  • @rakshithb5806
    @rakshithb5806 Před 2 lety

    Can there be a scenario where the validation fit of model with disturbance is lower than that of model without any disturbance component in spite of high autocorrelation among residuals? In my data sysTF model (first order TF with one pole, no zeros and finite dead time) has better performance in both estimation and validation datasets compared to a first order process model with disturbance fit to an ARMA1 model, yet sysTF has high autocorrelation of residuals. Interestingly, fitting a second order disturbance model ARMA2 seems to improve fit in validation dataset

  • @jorchmendozachok6342
    @jorchmendozachok6342 Před 2 lety +1

    thank

  • @qiangli1578
    @qiangli1578 Před rokem

    Where is the link that desciribes in detail the whiteness of the prediction residuals and the correlation between those residuals and the input into the system? Can you tell me please?

  • @TabletopWargamer
    @TabletopWargamer Před 2 lety

    Is there an official playlist for these system identification videos?

  • @ike3467
    @ike3467 Před 2 lety

    Well explained. Where are the matlab codes/ scripts used in this video?

  • @eyal4
    @eyal4 Před 2 lety

    when will part 3 release?

  • @StefanBrock_PL
    @StefanBrock_PL Před 2 lety +1

    Interesting, though not easy material. Unfortunately the first link provided (to Resourcium) does not work.

  • @user-pl5im9qu1v
    @user-pl5im9qu1v Před rokem

    Can anyone help me out in getting the dataset used in the video??

  • @utilizator1701
    @utilizator1701 Před 2 lety

    You make me regret that I have changed System Identification course with another one. System identification is interesting.

  • @andreasgotz4943
    @andreasgotz4943 Před 2 lety +1

    Hi Brian! Thanks for this video. Unfortunately the link to Resourcium doen't work. "Page not found" appears on Resourcium. I'm really interested on the code you give in the examples. Would it be possible that you share that document?

    • @roberto2912
      @roberto2912 Před 2 lety +1

      Hello, go to your MATLAB and type in the command line:
      >> doc linearRegressor
      Inside of it you will find in the section "Examples" the Open Live Script for all the examples of this video

  • @eliasbrassitos1
    @eliasbrassitos1 Před 2 lety

    Great video -- however for the next one as you get into online estimation using recursive least square estimation, can you go over an example where estimation starts from a modeled mathematical plant and goes from there... as oppose to doing the online estimation from a totally unknown model where parameters could divert a lot.

    • @OrangeDurito
      @OrangeDurito Před rokem

      What I have realized is that complete black box modeling is almost always a bad idea. We should try to incorporate as much information as we have of our system and then take the grey-box approach.

  • @ft6637
    @ft6637 Před 2 lety

    Thank you, very well explained and a nice example. There is just one thing going around my head left. Who does the estimation of the disturbance model work? Is there an official side explaining this? I mean after all the problem with the standard estimation methods, e.g. via Least Squares, is that you don't have the white noise input right? So how do you find the optimal values for the disturbance model?

    • @OrangeDurito
      @OrangeDurito Před rokem

      Great question! First of all, there are various models that you can try like random white noise, random Gaussian noise, noise at some particular frequency like 60 Hz from household power supply in case of power systems, etc. Also, while the video only talked about process noise, we also have measurement noise because of non-ideal sensors. So by implementing some sort of estimators like complimentary filter, moving average, or Kalman filter (for linear stochastic system; EKF/UKF/PF for nonlinear systems), we can get filtered output, and then we can focus on capturing the key dynamics of the actual plant with process disturbances. Let me know what you think.

  • @evanparshall1323
    @evanparshall1323 Před 2 lety

    Great video! I am confused as to how the one-step-predicted output is calculated?

    • @hudasedaki5529
      @hudasedaki5529 Před rokem

      instead of applying the whole input sequence to the model and compare the model output to the real test results, you can choose a time instant from the data, then initialize the model using the real test result corresponding to t1 and apply the corresponding input at t1 to the model, get the output at t2 and compare it to the test next output at t2 and so on...

  • @ondrejnovak339
    @ondrejnovak339 Před 2 lety

    the resourcium link is for the 1st video in the series

  • @fabio_0079
    @fabio_0079 Před rokem

    hi, i'm not an expert, i'm trying to replicate what you did and i think i found an error: at 15:50 you wrote sysInit = idproc('P1D','TimeUnit','seconds'); i'm pretty sure that it should be sysInit = idproc('P1D','TimeUnit','minutes');

  • @farukokumus1519
    @farukokumus1519 Před rokem

    What I don't understand is he also found a disturbance path, but when he tested, he did not give any gauss. white noise as an input to the disturbance path. Am I missing something?

    • @OrangeDurito
      @OrangeDurito Před rokem

      The 'sysP1D' model that he derived accounting for the disturbance contains the information that the output will be corrupted with the process noise, better estimated with the given ARMA1 model. So he doesn't need to explicitly apply the Gaussian random noise. Look closely at the MATLAB output after the sysP1D estimation.

  • @BASbasBOom
    @BASbasBOom Před 10 měsíci +1

    Where were you when I was in uni 😢

  • @linasogc21
    @linasogc21 Před 2 lety +1

    Brian and Matlab my worlds collide now