[ 
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)

Reply via email to