Prediction interval given parameter estimates
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I am trying to do a certain model simulation. Given a parameter estimation (best fit parameter values and their standard error), how can I use that to simulate scenarios with prediction intervals? Simbiology does parameter estimation with confidence intervals around the parameters and prediction intervals around the model simulations, but it's only in the same step as parameter estimation. So it shows the prediction interval for the model simulation fitted to the data. I want to propagate this uncertainty to a different simulation that is not the from the dataset that I am fitting.
1 Commento
Torsten
il 24 Lug 2025
Modificato: Torsten
il 24 Lug 2025
Why not doing it in two steps: parameter fitting, taking pencil and paper, writing down the prediction intervals and starting a new simulation with assumed values from these intervals written down to paper ? Or do I misunderstand your last sentence : I want to propagate this uncertainty to a different simulation that is not the from the dataset that I am fitting. ?
Risposta accettata
Sameer
il 28 Lug 2025
To simulate prediction intervals using parameter estimates from a SimBiology fit and apply them to a different simulation scenario (not the original dataset), you can propagate the uncertainty using a Monte Carlo approach. Here's how:
1. Extract parameter estimates and their covariance matrix from your fitting results:
p_est = fitResults.ParameterEstimates.Estimate;
Sigma = fitResults.CovarianceMatrix;
2. Sample parameter sets assuming a multivariate normal distribution using the best-fit values and the covariance:
N = 1000;
paramSamples = mvnrnd(p_est, Sigma, N);
3. Simulate the model with each sampled parameter set under the new scenario (e.g., different dose or input). For each sample:
for i = 1:N
for k = 1:numParams
model.Parameters(k).Value = paramSamples(i,k);
end
simData = sbiosimulate(model);
Yall(:,i) = simData.Data(:, responseIndex); % store the output of interest
end
4. Compute prediction intervals by taking percentiles across the simulated outputs:
lowerPI = prctile(Yall, 2.5, 2);
upperPI = prctile(Yall, 97.5, 2);
This method lets you apply the "parameter uncertainty" obtained from fitting to "new simulations" beyond the original dataset. It's a flexible, simulation-based approach that doesn't rely on built-in SimBiology functions like "sbiopredictionci", which are limited to the original fitting context.
Hope this helps!
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Scan Parameter Ranges in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!