Simscape parameter estimate using App

3 次查看(过去 30 天)
I'm using siimscape multibody models together with App Simulink parameter estimator to get identification of my system under specified input/expected output. Some models fail to converge to right value, and I guess is due to lack of observabiility of some parameters are not directly identifiable because of system model mechanics that bound together some of them.
My point is now, Is there any way to evaluate parameters observability or should I just rely on fit residuals?
Thanks for support.
  2 个评论
Yifeng Tang
Yifeng Tang 2024-9-18
Parameter Estimator app is basically formulating and solving an optimization problem by minimizing certain error/residual. If you stay with this tool, that's what you get.
I'm not quite sure what you mean by evalute parameter observability. Maybe explain a bit and help the community understand your hypothesis better?
ENRICO
ENRICO 2024-9-19
Pleased to clarify with you my issue. I'm used at linear estimation problem mostly, whose generic optimization problem under some additional assumptions is a extension. In linear problem we use aprtial derivatives matrix as regressor for estiamting our paramters vector by solving an overdetermined problem. Nonetheless involved regressor could come out to be rank deficient, for instance because considered signals do not depend on selected parameters, or more subtly because they in same way from different parameters, or depend on linear combinations of parameters. In these case we have unobervable parameters and indiirectly observable parameters (cannot be estiamted alone). Classic theory can be extended with some caution, to generic non linear case. We have parameters not affecting signals, or parameters that depend from combinations of parmeters. In addition I'd say there's no warning about problem linearity, since in that case solution would be easier and less time taking, and fundamentally more robust. Anyway my issue iis that by tryals I remarked issues on correct estimation when such case arise, since we may have parameters that get rbitrary values and potentiially parameters assuming values that are not consistent with real solution because of aforementioned points. I warmly suggest to add some checks if any do not already exist, in order to better interpretate tool results.

请先登录,再进行评论。

回答(1 个)

Yifeng Tang
Yifeng Tang 2024-10-4
I echo much of your concerns and observations in the comments!
Parameter estimator is a tool to find a minimum by tuning the parameters we tell it to tune, to match a set of data we tell it to match, starting from initial values we tell it to start from, and bounded by a set of min/max that we tell it as the boundary. It's not a "smart" tool in such sense; it's just an automated tool. Lots of insights from the users, as domain experts of the system we are modeling, are needed to make the applicaiton of this tool successful.
There is a sensitivity analysis tool within the Estimator that can help you identify the sensitive parameters, BUT it probably can't distinguish between "parameters that depend from combinations of parmeters". Judgment from domain experts cannot be replaced here. I usually rely on my understanding of the physical system and my understanding on the effect of certain parameters, when choosing the parameters to tune and to verify that the provided reference data is sufficient to tune those parameters.
The outcome, as a combination of estimated values parameters, as you hinted in your coments, is very likely not unique, which means they may result in match with the reference data but they may not represent the real values of the parameters. One way to avoid this is to always have a set of test data, independent of the experiment data used to tune the parameters, to test whether the set of parameters works in other cases. Parameter Estimator support testing with test data and I would recommend using that whenever possible.
My thoughts so far. Proceed with caution :)

类别

Help CenterFile Exchange 中查找有关 Trimming and Linearization 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by