how to handle the error 'Levenberg-Marquardt algorithm the Jacobian at BETA0 is ill-conditioned'?

5 vues (au cours des 30 derniers jours)
Hi,
I try to run the fit in Simbiology using 'mixed effects' modeling. The transformation is exp(theta1+eta1). The 'error model' is 'constant'. Under 'Algorithm settings', 'ApproximationType' is set to 'FOCE'. This produces the following error:
"Severity Message error After the initial refinement of the fixed effects with the Levenberg-Marquardt algorithm the Jacobian at BETA0 is ill-conditioned. Some fixed effects may not be identifiable resulting in a poor estimation. Check for possible aliased parameters of your model, or try setting 'RefineBeta0' to FALSE."
I set 'RefineBeta0' to FALSE" but I received another error message:
"error A simulation errored or returned NaN, Inf, or complex values during parameter estimation. This typically indicates that the estimated parameter values converged to values that are invalid for the model."
How do I overcome this issue? Any help or direction is greatly appreciated.

Réponses (1)

Arthur Goldsipe
Arthur Goldsipe le 30 Sep 2024
It's difficult to say exactly what's going on without seeing your model and data. One explanation is that your model is not appropriate for the data. Alternatively, your data may not be sufficient for identifying all of the parameters in your model.
To address this issue, you could try to develop a different (simpler) model, try to estimate fewer parameters in your model, or (hardest of all) try to identify what additional data you need to collect for fitting this model and then collect this data.
I would start by trying to figure out which parameter(s) lead to the first error and focus on those. One thing that might help with that is to do a pooled fit (nonlinear regression rather than mixed-effects). That's essentially what happens during the RefineBeta0 step. If you find that one parameter has a very large standard error or has a strange value, that's likely the one that is causing problems.
The second error is harder to address. Sometimes this happens because parameters take on extreme values during fitting. The most straightfoward way to prevent that is by putting bounds on the parameters you want to estimate, but our mixed-effects estimation doesn't curretnly support bounds. But you could potentially work around that by adding something to your model that functions like parameter bounds. For example, you could introuce a new parameter and assoicated initial assignment rule that enforces bounds: k_out = min(max(k_in,k_min),k_max);

Produits


Version

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by