SimBiology parameter fit
显示 更早的评论
I am running a Pkmodel in SimBiology and I wanted to fit some parameters using the experimental data I have. When I tried the built-in fitparameter option using sbionlinfit (individual fit). I have to provide initial estimates for the parameters i need to fit and simulation will return estimated parameters. My question here is how can i give a parameter range (for the required parameters to be fitted) so that it can return the best fit. In the built-in option its taking only one value as the input and giving the result near to it irrespective of the fit. It requires manual input every time and need to check what is the fit, it will take years to fit i guess. Would you suggest possibilities so that I can give that range to parameter and simulation will pick the best value which fits the data (like the one in "fmincon")
回答(1 个)
Arthur Goldsipe
2011-9-23
0 个投票
sbionlinfit uses a local optimization routine that does not support parameter bounds. Even fmincon, which does support parameter bounds, can get trapped in local minima. If the output parameters are very close to the initial guesses you are likely encountering a problem that is common when estimating parameters for ODEs (which SimBiology models are at a fundamental level): The error tolerances in solving ODEs can lead to a noisy objective function that is difficult to fit. Two ways to overcome the noise problem are to tighten the ODE solver tolerances (AbsoluteTolerance and RelativeTolerance options in SimBiology) and to increase the step size that the optimizer uses when estimating the gradient (the DerivStep option in sbionlinfit and nlinfit).
In recent versions of MATLAB (specifically, R2011a and later), the default DerivStep used by sbionlinfit was changed to try to address this exact problem. So if you were using an earlier version, you might try your fitting problem again in a newer version.
However, you may still find that your fitting results are sensitive to the initial parameter estimate. This is a big challenge, and there is in fact a Global Optimization Toolbox to help with these sorts of problems. Unfortunately, it's hard (if not impossible) to come up with an approach that works for all models and data.
-Arthur
类别
在 帮助中心 和 File Exchange 中查找有关 Scan Parameter Ranges 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!