The random module in NumPy provides several alternatives to the default PRNG, which uses a 128-bit permutation congruential generator. While this is a good general-purpose random number generator, it might not be sufficient for your particular needs. For example, this algorithm is very different from the one used in Python’s internal random number generator. We will follow the guidelines for best practice set out in the NumPy documentation for running repeatable, but suitably random, simulations.
In this recipe, we will show you how to change to an alternative pseudo random number generator, and how to use seeds effectively in your programs.
Getting ready
As usual, we import NumPy under the alias np. Since we will be using multiple items from the random package, we import that module from NumPy, too, using the following code:
from numpy import random
You will need to select one of the alternative...