This package provides deterministic, repeatable, pseudo-random number generators, a set of strategies for seeding them, and classes for generating values from different probability distributions.
| Interface | Description |
|---|---|
| RepeatableRNG |
Deterministic random number generators are repeatable, which can prove
useful for testing and validation.
|
| SeedGenerator |
Strategy interface for seeding random number generators.
|
| Class | Description |
|---|---|
| AESCounterRNG |
Non-linear random number generator based on the AES block cipher in counter mode.
|
| BinomialGenerator |
Discrete random sequence that follows a
binomial
distribution.
|
| CellularAutomatonRNG |
Java port of the
cellular
automaton pseudorandom number generator developed by Tony Pasqualoni.
|
| CMWC4096RNG |
A Java version of George Marsaglia's
Complementary
Multiply With Carry (CMWC) RNG.
|
| ContinuousUniformGenerator |
Continuous, uniformly distributed random sequence.
|
| DefaultSeedGenerator |
Seed generator that maintains multiple strategies for seed
generation and will delegate to the best one available for the
current operating environment.
|
| DevRandomSeedGenerator |
RNG seed strategy that gets data from /dev/random on systems
that provide it (e.g.
|
| DiehardInputGenerator |
Utility to generate an input file for the
DIEHARD suite of statistical
tests for random number generators.
|
| DiscreteUniformGenerator |
Discrete, uniformly distributed random sequence.
|
| ExponentialGenerator |
Continuous random sequence that follows an
exponential
distribution.
|
| GaussianGenerator |
Normally distributed
random sequence.
|
| JavaRNG |
This is the default
JDK RNG extended
to implement the RepeatableRNG interface (for consistency with
the other RNGs in this package). |
| MersenneTwisterRNG |
Random number generator based on the
Mersenne
Twister algorithm developed by Makoto Matsumoto and Takuji Nishimura.
|
| PoissonGenerator |
Discrete random sequence that follows a
Poisson
distribution.
|
| Probability |
Immutable value type for probabilities.
|
| RandomDotOrgSeedGenerator |
Connects to the random.org
website (via HTTPS) and downloads a set of random bits to use as seed data.
|
| SecureRandomSeedGenerator |
SeedGenerator implementation that uses Java's bundled
SecureRandom RNG to generate random seed data. |
| XORShiftRNG |
Very fast pseudo random number generator.
|
| Exception | Description |
|---|---|
| SeedException |
Exception thrown by
SeedGenerator implementations when
they are unable to generate a new seed for an RNG. |