[
https://issues.apache.org/jira/browse/MATH-1656?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17759397#comment-17759397
]
Gilles Sadowski commented on MATH-1656:
---------------------------------------
* Javadoc
** Cf. MATH-1665
** Please try and follow the style used e.g. in {{SimplexOptimizer}}.
* {{MathArrays}}
** See utilities in "Commons Numbers" (e.g. "Norm" in "core" module)
** Methods never ({{scaleInPlace}}), or rarely ({{unitaryVector}}), used
should not be "public"
* {{BaseOptimizer}}
** Visibility of method {{resetCounters}} (needlessly?) increased from
"private" to "protected"
* {{DoubleData}}, {{DoubleStrictlyPositiveData}},
{{ObjectiveFunctionDimension}}, {{SearchRange}}
** Cf. previous review.
* {{DebugMode}}
** Rather than storing debugging info (cf. {{trajectory}} field), maybe add a
callback interface, like in {{SimplexOptimizer}} (?)
* {{MinDirectionNorm}}
** Should be clarified, renamed, better documented (reference)
** Perhaps moved as an inner class of {{GradientLikeOptimizer}}
* {{OptimizationStatus}}
** To be discussed, as it departs from current usage.
If agreed on, it should be applied in all implementations (not only in
{{GradientLikeOptimizer}}).
* Remove commented-out code (e.g. "MultivariateCalliper")
* Usage of "LocalizedFormats" is being abandoned (not used in new modules)
* Better add new exception classes close to where they are used (dedicated
"exception" package is being abandoned)
* {{MultivariateOptimizer}}
** Visiblity of {{getObjectiveFunction}} increased to "public" (to be
discussed)
* Constant must declared "final" and private, and its name be uppercase (e.g.
{{MIN_GRADIENT_NORM}}, not {{minGradientNorm}})
* {{minGradientNorm}} should be private as it is used only once.
* {{TestFunction}}, {{TestFunctionGradient}}, {{TestFunctionHessian}}
** Should be a single "enum" with accessors to the objective, gradient and
Hessian functions.
> Classical multivariate optimizers (gradient descent, Raphson-Newton, BFGS)
> are missing
> --------------------------------------------------------------------------------------
>
> Key: MATH-1656
> URL: https://issues.apache.org/jira/browse/MATH-1656
> Project: Commons Math
> Issue Type: Wish
> Components: legacy
> Affects Versions: 4.0-beta1
> Reporter: François Laferrière
> Priority: Major
> Labels: features
> Attachments: MATH-1656-GradientDescent-Newton-BFGS-v2.0.zip,
> MATH-1658-GradientDescent-Newton-BFGS-v3.0.patch,
> MATH-1658-GradientDescent-Newton-BFGS.patch, Screenshot from 2023-07-10
> 12-13-38.png
>
>
> Some classical multivariate such as
> * gradient descent,
> * Raphson-Newton,
> * BFGS
> are missing.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)