How to hack tfest/oe identification algorithm in order to set constraints during estimation

1 次查看(过去 30 天)
Good morning community,
I would like to hack into the estimation algorithm for system identification using the commands tfest(...) or oe(...). From the documentation it seems they use the same algorithm under the hood, specifically it is said:
"For discrete-time data, tfest uses the same algorithm as oe to determine the numerator and denominator polynomial coefficients. In this algorithm, the initialization is performed using arx, followed by nonlinear least-squares search-based updates to minimize a weighted prediction error norm."
I'm actually using discrete time-domain data for a MISO systems, specifically with two inputs. The structure of the model is the following
I would like to impose the constraints
How can I do this?
Thanks, Luca

回答(1 个)

Khaled Aljanaideh
Khaled Aljanaideh 2021-2-24
If the coloring of the noise term (e) in the model structure is not important, then this can be done by using the ARMAX or ARX model structures. Note that the arx model structure, for example, can be written as , which is equivalent to , where the model structure shown in the question is
  2 个评论
Khaled Aljanaideh
In this case, ssest would be the best option. After estimating a state space model using ssest, a polynomial model can be constructed, which will have a model structure similar to the one shown in the question. Also, the noise term in this case is not colored. Please note that most functions in the system identification toolbox such as (oe, arx, armax, ssest, and many more) are based on prediction error methods (pem) under the hood.

请先登录,再进行评论。

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by