rcond when using genetic algorithm for maximum likelihood
Show older comments
I am trying to perform a maximum likelihood in MATLAB. However, if I use fmincon, the initial values of the parameters I want to estimate have to be chosen carefully. Sometimes, I can't find the appropriate initial condition to guarantee convergence from fmincon.
Hence I decided to try out the genetic algorithm since it does not require an initial value. I get a slew of rcond errors (but not rcond = nan, it's rcond = some small number) and then I obtain the estimates which are close enough to the true values.
I am aware that the MATLAB warnings say "Results may be inaccurate" but how should this be interpreted in my situation?
Could it be that genetic algorithm just encountered some points which gave nasty values but was able to redirect its search eventually to the true value? Help appreciated!
Answers (1)
Alan Weiss
on 5 Dec 2014
0 votes
I suggest that you try fmincon with MultiStart. You are more likely to get reliable solutions, and probably more quickly than using ga. This example uses lsqcurvefit, but shows the workflow. Be sure that you set appropriate bounds, it is very important in order to get reliable answers.
There is no magic about using ga. In general it is slower and less reliable than other techniques.
Alan Weiss
MATLAB mathematical toolbox documentation
Categories
Find more on Choose a Solver in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!