Proposal to accept NEP 19: Random Number Generator Policy
I propose that we accept NEP 19: Random Number Generator Policy: http://www.numpy.org/neps/nep-0019-rng-policy.html The discussions on this NEP were productive and led to a major revision in how stable random number streams will be maintained in the future for the purpose of unit testing. The current version is much more elegant and imposes less pain on downstream projects. I'd like to thank everyone who participated in that discussion: you really did a good job at clarifying the issues. The NEP is much better because of your input. If there are no substantive objections within 7 days from this email, then the NEP will be accepted; see NEP 0 for more details: http://www.numpy.org/neps/nep-0000.html -- Robert Kern
There has been one clarification to the text: https://github.com/numpy/numpy/pull/11488 For the legacy RandomState, we will *not* be fixing correctness bugs if they doing so would break the stream; this is in contrast with the current policy where we can fix correctness bugs. In the post-NEP world, RandomState's purpose will be to provide across-version-stable numbers for unit tests, so stability is primary. I don't expect to see many more bugs, except in arcane corners of the parameter spaces, like in #11475, which can be avoided, and we can introduce warnings to help users avoid them. https://github.com/numpy/numpy/pull/11475 -- Robert Kern
On Tue, Jul 3, 2018 at 4:34 PM, Robert Kern <robert.kern@gmail.com> wrote:
There has been one clarification to the text:
https://github.com/numpy/numpy/pull/11488
For the legacy RandomState, we will *not* be fixing correctness bugs if they doing so would break the stream; this is in contrast with the current policy where we can fix correctness bugs. In the post-NEP world, RandomState's purpose will be to provide across-version-stable numbers for unit tests, so stability is primary. I don't expect to see many more bugs, except in arcane corners of the parameter spaces, like in #11475, which can be avoided, and we can introduce warnings to help users avoid them.
NEP status is now accept (https://github.com/numpy/numpy/pull/11560). Thanks Robert (& Kevin & @all)! Ralf
participants (2)
-
Ralf Gommers
-
Robert Kern