You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Bruce A Johnson (JIRA)" <ji...@apache.org> on 2014/03/01 23:09:19 UTC
[jira] [Commented] (MATH-1092)
NonLinearConjugateGradientOptimizer's Line search is a gradient search
returns obviously suboptimal point.
[ https://issues.apache.org/jira/browse/MATH-1092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13917206#comment-13917206 ]
Bruce A Johnson commented on MATH-1092:
---------------------------------------
The new line search works, but I think it needs one change. The old version used a BracketingStep parameter to set the initial search size. That is not used in the new LineSearch code, which has a hard-coded an upper limit of 1:
bracket.search(f, goal, 0, 1);
For my optimization problem I find (with both the old and new code) I need a much smaller upper limit (1.0e-5 for example). Otherwise the minimum found isn't as good. So I think it would be important to pass the BracketingStep parameter into the new new LineSearch code.
> 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)