You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Luc Maisonobe (JIRA)" <ji...@apache.org> on 2016/01/10 17:49:39 UTC

[jira] [Commented] (MATH-1314) RNG: Warn users about "seeding"

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

Luc Maisonobe commented on MATH-1314:
-------------------------------------

Nothing can ensure *all* seed are good enough. For any procedure, there will be corner cases that may be poor.

The procedures that we have now were provided by the algorithm creators, we cannot do anything more
than trusting these experts. I don't think we can provide any tools. The generators are good, and they
do create an entropy pool efficiently. Checking the very slight non-uniformity of these pool is beyond
our capabilities. We could do that if the generators were poor, but they are good.

Concerning the performances, they we obtained on my machine, and its characteristics are shown,
because as usual the results depend on the computer. They are not expected to be really accurate,
only to give some rough order of magnitudes. Also as the implementations were changed since the
benchmarks have been run, I am not surprised these rough order of magnitudes are not true
anymore. So you can either remove the table or update it. Is the MersenneTwister  much faster or
only marginally faster?

> RNG: Warn users about "seeding"
> -------------------------------
>
>                 Key: MATH-1314
>                 URL: https://issues.apache.org/jira/browse/MATH-1314
>             Project: Commons Math
>          Issue Type: Wish
>            Reporter: Gilles
>              Labels: doc
>             Fix For: 4.0
>
>
> The "package-info.java" file of {{o.a.c.m.random}} does not mention the problem of seeding.
> Many users of CM could not be aware that it is not sufficient to "randomly" choose a seed in order to ensure a random sequence.
> I think that this is what is illustrated by random failures of some unit tests (when the seed is "randomly" selected).
> Do the intricate initialization procedures provided in some implementations (WELL family and ISAAC) ensure that all seeds are good enough?
> Should we provide some tool to test a seed?
> By the way, the WELL performances listed on [this table|http://commons.apache.org/proper/commons-math/javadocs/api-3.6/org/apache/commons/math3/random/package-summary.html] do not correspond to the results obtained on my machine with our {{PerfTestUtils}} benchmark: the {{MersenneTwister}} is invariably faster than all WELL implementations.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)