[
https://issues.apache.org/jira/browse/MATH-867?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13461783#comment-13461783
]
Frank Hess commented on MATH-867:
---------------------------------
I've sent an email to the original author. I've copied what I wrote to him
below for reference:
{quote}
Hi,
I was wondering if you have any input on this bug in the Apache Commons
implementation of your algorithm:
https://issues.apache.org/jira/browse/MATH-867
It seems to be due to their attempt to follow your "encoding of variables"
hint. They map parameters on to the interval [0,1] when boundaries are
provided, which can have a bad interaction with how floating point variable ULP
are distributed. Since your hint seems to suggest the main point of this
encoding is just make the width of the intervals uniform, it seems to me they
could just scale the boundaries onto a interval of unit width without offseting
the interval to start at zero. This would get rid of the mismatch in ULP
distribution between the scaled interval and the original boundaries.
{quote}
> 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: 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