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

Christian Winter commented on MATH-699:
---------------------------------------

Much discussion has happened here in the recent days. Thanks!

Now I realize that it is hard to get rid of the bracketing step in the case of 
unbounded support. I guess a default bracket of 
{{[-Double.MAX_VALUE;+Double.MAX_VALUE]}} for  {{0<p<1}} isn't a good idea for 
such cases. Maybe we can move the bracketing step into a {{getBracket(double 
p)}} method (only {{0<p<1}} needs to be handled), which makes use of the 
support bounds where possible and performs an bracketing algorithm only as last 
option. For specific distributions this method can be overridden by providing 
brackets through precomputed cdf-values or clever estimations, which removes 
using an bracketing algorithm at all. Such a method allows to delete 
{{getDomainLowerBound}}/{{getDomainUpperBound}}/{{getInitialDomain}}. However, 
this replacement doesn't remove the pain caused by 
{{getDomainLowerBound}}/{{getDomainUpperBound}}/{{getInitialDomain}} 
completely. It is just a little mitigation to this pain as {{getBracket}} 
doesn't have to be overridden (though it should be overridden to increase 
performance unless {{inverseCumulativeProbability}} is overridden entirely).

For the plateau issue I unfortunately don't see a way to avoid implementing a 
modified solver so that it approximates the solution by moving together {{x0}} 
and {{x1}} satisfying {{P(X<=x0) < p}} and {{P(X<=x1) >= p}}.
                
> inverseCumulativeDistribution fails with cumulative distribution having a 
> plateau
> ---------------------------------------------------------------------------------
>
>                 Key: MATH-699
>                 URL: https://issues.apache.org/jira/browse/MATH-699
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 3.0
>            Reporter: Sébastien Brisard
>            Assignee: Sébastien Brisard
>            Priority: Minor
>         Attachments: AbstractContinuousDistributionTest.java
>
>
> This bug report follows MATH-692. The attached unit test fails. As required 
> by the definition in MATH-692, the lower-bound of the interval on which the 
> cdf is constant should be returned. This is not so at the moment.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to