[ https://issues.apache.org/jira/browse/MATH-404?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gilles resolved MATH-404. ------------------------- Resolution: Later Final resolution is delegated to issue [MATH-413|https://issues.apache.org/jira/browse/MATH-413]. > Confusing interface for "LevenbergMarquardtOptimizer" > ----------------------------------------------------- > > Key: MATH-404 > URL: https://issues.apache.org/jira/browse/MATH-404 > Project: Commons Math > Issue Type: Bug > Affects Versions: 2.1 > Reporter: Gilles > Assignee: Gilles > Fix For: 3.0 > > > {{LevenbergMarquardtOptimizer}} inherits from > {{AbstractLeastSquaresOptimizer}} which in turn implements > {{DifferentiableMultivariateVectorialOptimizer}}. That interface mandates > methods for setting and getting a {{VectorialConvergenceChecker}}. > In v2.1, however, that checker is never used! The convergence check is > performed using parameters specific to the Levenberg-Marquardt algorithm. > Such circumvention of the superclass interface is confusing and leads to > totally unexpected behaviour (such as changing the values of the thresholds > of the {{VectorialConvergenceChecker}} being ineffective). > In the development version, the default constructor of > {{LevenbergMarquardtOptimizer}} sets the the {{VectorialConvergenceChecker}} > field to "null" and when such is the case, the behaviour is as in v2.1. > Although it is documented, this is still confusing since it is impossible to > use {{LevenbergMarquardtOptimizer}} through its > {{DifferentiableMultivariateVectorialOptimizer}} interface: When using the > {{VectorialConvergenceChecker}}, one does not know what parameters to use in > order to reproduce the results obtained with the LM-specific convergence > check (i.e. how to reproduce the result from v2.1). > Unless I'm missing something, I think that there should be an LM-specific > implementation of {{VectorialConvergenceChecker}} that, when given the usual > relative and absolute thresholds, can perform a check that will give the same > result as the currently specific check (when the "checker" field is "null"). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.