commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles (JIRA)" <>
Subject [jira] Created: (MATH-404) Confusing interface for "LevenbergMarquardtOptimizer"
Date Mon, 09 Aug 2010 11:44:16 GMT
Confusing interface for "LevenbergMarquardtOptimizer"

                 Key: MATH-404
             Project: Commons Math
          Issue Type: Bug
    Affects Versions: 2.1
            Reporter: Gilles
             Fix For: 2.2

{{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.

View raw message