Software that generates random numbers does so by generating a sequence of numbers, where the sequence is believed to have no discernable pattern. These algorithms work by:
- Starting with an initial number that is provided by somebody. This number is the seed.
- Using an algorithm to generate a new number, by modifying the seed in some way.
- Using the new number as a seed, and applying the algorithm again to generate a newer number.
There are two strategies when setting the seed:
- Automating the process in a way that hopefully has no pattern. For example, using the time on a computer's clock as the seed.
- Specifying a seed which is always used. This has the advantage that whatever analyses are based on the random number generation will always return the same results.