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

Gilles commented on MATH-867:
-----------------------------

bq. Attached a patch. It makes encode/decode identities and removes the 
restrictions on infinite ranges.

Sorry but it is not good: You are removing the fix to your other issue 
(MATH-865). Even if it won't be necessary anymore when this issue is fixed, it 
cannot be reverted as part of this issue. Let's leave the possibility to have 
infinite bounds for later, and focus on making the code work with finite bounds.

bq. The test on fit resolution near upper/lower bounds fails.

This is what must be fixed by the patch, without any side-effects (i.e. other 
tests failing).

bq. I believe the reason is that defaulting sigma to 0.3 times the range [...]

In MATH-868, I noted that this does not work, since using this value makes the 
"testFitAccuracyDependsOnBoundary" fail. From this I conclude, that if the doc 
for "inputSigma" is correct, then there is something else to be changed in the 
code, or that the doc must be changed to indicate that "inputSigma" is 
"relative".

Nikolaus seems to confirm the latter (IIUC):
{noformat}
fitfun.encode(guess)[i] - sigmaArray[i]/2. > fitfun.encode(boundaries[0])[i]
{noformat}

                
> CMAESOptimizer with bounds fits finely near lower bound and coarsely near 
> upper bound. 
> ---------------------------------------------------------------------------------------
>
>                 Key: MATH-867
>                 URL: https://issues.apache.org/jira/browse/MATH-867
>             Project: Commons Math
>          Issue Type: Bug
>            Reporter: Frank Hess
>         Attachments: MATH867_patch, Math867Test.java
>
>
> When fitting with bounds, the CMAESOptimizer fits finely near the lower bound 
> and coarsely near the upper bound.  This is because it internally maps the 
> fitted parameter range into the interval [0,1].  The unit of least precision 
> (ulp) between floating point numbers is much smaller near zero than near one. 
>  Thus, fits have much better resolution near the lower bound (which is mapped 
> to zero) than the upper bound (which is mapped to one).  I will attach a 
> example program to demonstrate.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to