Solutions of genetic algorithm and globalsearch versus fmincon
16 次查看(过去 30 天)
显示 更早的评论
I have a nonlinear constrained optimization problem (it is a constrained max likelihood problem). I have used Matlab's genetic algorithm and globalsearch for it. In each case, I run fmincon starting with the optimal solution to get the Hessian, but the fmincon solution differs from the starting point. Can you help?
0 个评论
回答(4 个)
Athul Prakash
2020-1-27
Hi Rui,
I assume that after ga/globalsearch have terminated with a solution, you are calling fmincon with the 'hessian' output option present.
Seeing as fmincon is a completely different category of algorithm to either ga or globalsearch, I would infer that fmincon can further run on your solution (most likely giving you more fine-tuned results). What kind of values are you seeing? Are the differences in the values of obj. function or the solution point that surprising, in your case?
Let me also mention that fmincon returns the Hessian at the second-to-last point, not the final point it converged to.
I would suggest using a different approach to finding the Hessian than running fmincon. You may find the following File Exchange link handy for that, though please be aware that tools on File Exchange are submitted by the community, and not built or tested by The Mathworks.
To calculate Hessiians, consider "Derivest": https://in.mathworks.com/matlabcentral/fileexchange/13490-adaptive-robust-numerical-differentiation
0 个评论
Alan Weiss
2020-1-29
See Hessian for an explanation of why the fmincon Hessian return is pretty much useless. If you need the Hessian AND the solution is not near a constraint, then fminunc can give a reasonable approximation.
Alan Weiss
MATLAB mathematical toolbox documentation
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!