フィルターのクリア

Define a state space model where some parameters are time varying and others are not

4 ビュー (過去 30 日間)
Manuela Magalhães
Manuela Magalhães 2022 年 3 月 28 日
回答済み: Aditya 2024 年 1 月 17 日
Hi!
I am trying to estimate a state space model with ssm. I have defined matrices A, B and C as the function asks (A and B are time invariant and C is time varying).
However, I still have not found a way to implement my observation-innovation coefficient matrix, D, as I wish.
I want a time varying D, where 5 of the 6 errors only occur sporadically, but, when they occur, the associated parameter should be the same.
But when doing so in ssm it counts each Nan as a different parameter. I am not sure ParamMap works as C and D are time varying. If someone knows how to solve this or has a hint towards implementing it, I would be very grateful!

回答 (1 件)

Aditya
Aditya 2024 年 1 月 17 日
When you have time-varying matrices like C and D in your state space model, you can typically handle them by defining a function that generates these matrices for each time step. However, if you're trying to have shared parameters for non-zero entries in D that occur sporadically, you'll need a more customized solution.
Here's a general approach you might consider:
  1. Define a parameter vector that holds the unique parameters you want to share across different time steps for the D matrix.
  2. Create a mapping function that, given a time step, returns the appropriate D matrix with NaNs for the errors that do not occur at that time step and the shared parameter values for the errors that do occur.
  3. During the optimization or estimation process, ensure that the mapping function is called at each time step to construct the correct D matrix.
To implement this in ssm, you might need to subclass one of the existing models or write your own custom model class that can handle this behavior.

カテゴリ

Help Center および File ExchangeStandard State-Space Model についてさらに検索

製品


リリース

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by