Parameter estimation from a user specific algorithm

I have a complex physical system which I can model through an algorithm which I've written in Matlab. It's not a standard state-space, ODE, etc. model, it's an algorithm for which I specify input parameters and I obtain an output which I can match to data which I take from the real physical system.
Is there any tool in Matlab which allows me to run my algorithm with different parameter values and try to estimate the parameters for a best fit to my data? I've tried writing an MCMC parameter walk with least squares fitting, but its a work in progress and quite inefficient at the moment, and was wondering if there was something out there already that could do this for me.
Thanks!

1 comentario

Do you mean Monte Carlo technique by MCMC ? I think you can try to use rand() in a for-loop to pickout the various parameters and find fitness functions to see goodness of fit from your solver/curve-fit solutions.
You can try to see if there is a match with MATLAB System ID toolbox http://www.mathworks.com/products/sysid/examples.html?s_cid=BB or the MATLAB genetic algorithm http://www.mathworks.com/help/gads/genetic-algorithm.html

Iniciar sesión para comentar.

Respuestas (1)

Matt J
Matt J el 26 de Feb. de 2013
Basically any tool in the Optimization Toolbox could be applicable, depending on the constraints (if any) you're imposing on the parameters. Look at LSQNONLIN or FMINCON.

Categorías

Preguntada:

el 26 de Feb. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by