[ 
https://issues.apache.org/jira/browse/MATH-1092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13914704#comment-13914704
 ] 

Luc Maisonobe commented on MATH-1092:
-------------------------------------

This seems good to me.

The missing function evaluations count is probably due to the 
GradientMultivariateOptimizer.computeObjectiveGradient method,
which lacks a call to incrementEvaluationCount() which is used for example in 
MultivariateOptimizer.computeObjectiveValue.

I don't remember if this was intentional or not. Both computeObjectiveValue and 
computeObjectiveGradient are called in 
NonLinearConjugateGradientOptimizer.doOptimize, and computeObjectiveGradient 
was also called (and was the only function called)
for the initial gradient-based line search. So we should probably also call 
incrementEvaluationCount for computeObjectiveGradient, and
this will probably increase even more the total number of calls.

> NonLinearConjugateGradientOptimizer's Line search is a gradient search 
> returns obviously suboptimal point.
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: MATH-1092
>                 URL: https://issues.apache.org/jira/browse/MATH-1092
>             Project: Commons Math
>          Issue Type: Bug
>            Reporter: Ajo Fod
>         Attachments: MATH-1092.patch
>
>
> In package : org.apache.commons.math3.optim.nonlinear.scalar.gradient
> In a minimization problem, a line search should not return a point where the 
> value is greater than the values at the edges of the interval. The line 
> search violates this obvious requirement by focusing solely on solving for 
> gradient=0 and ignoring the value.
> Moreover LineSearchFunction is something that can be used in other contexts, 
> so perhaps this should be a standalone class.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to