I am quite new to the field of optimization, but have one question:
I am using python and scipy to optimize my objective function (quite complex so I dont want to write it in here). I know the analytical gradient and hessian, so all optimizers can work with analytical information. All optimizers work fine, BUT the optimizers Newton-CG, TNC, BFGS, L-BFGS-B, CG have more or less the same cost after convergence. But Levenberg-Marquardt dont. Example of more or less: Cost BFGS: 2.017036885832916 Cost TNC: 2.0170368865962947
But Levenberg Marquadt: Cost 2.0419251525955135, Tweaking the tolerance parameters (termination by change of cost function etc.) does not influence it very much, so it stays almost the same. What is the reason behind it? I know, each solver has different properties and without knowing the function no one can give an explanation, so I better ask: What COULD be the reason?