How RandomWare Generates Random Selections

RandomWare complies 100% with the DOT's and other mandated testing requirements for random selection.  See our article about the DOT's specific reference concerning compliance.

A random number generator from the Microsoft Run Time Library generates the random number sequences used to select individual entries from RandomWare base lists.

Consider a list of 100 entries.  Each entry in the list is assigned a number, 1-100, by virtue of its order in the list.  The first entry is 1, the second entry is 2, . . ., and the last entry is 100.

If you sort the list, the sequence numbers are automatically reassigned.

The Algorithm
To start, the random number generator is initialized with a "seed."  Most numeric algorithms require a "seed" to start the process.  For example, the common Square Root algorithm, a well known function, requires an approximate answer before it can calculate, iteratively, to the final solution. The closer the initial approximation, the fewer iterations required to reach convergence.

Microsoft's random number function, rand( ), generates a unique sequence of random numbers for a given seed.  The routine, rand(), will generate the same sequence of random numbers for a given seed.   RandomWare uses a unique, non-reoccurring, number for the seed: time of day, in seconds - specifically the number of seconds since January 1970.  Since every time value is unique, a unique sequence of random numbers is generated.    It's not possible to generate two random selections through RandomWare using the same seed - this is guaranteed.  However, through the random number utility provided with the system for simple random number generation, if you click the generate button rapidly enough, twice within a second, you can see for yourself that two identical sequences of numbers are generated.

Consider a list of 100 individuals. The random number generator is "seeded" and begins returning random numbers. For randomly generated numbers between 1 and 100, the individual whose order in the list corresponds to the number, is considered selected.  When the number of individuals selected equals the number requested, the process stops and the list is presented.

A valid random number generator must demonstrate uniform distribution - a vital characteristic for an algorithm to be valid.  The uniform distribution of the numbers generated through RandomWare can be demonstrated through the program's General Random Number Generator.

The following run time library routines used in RandomWare are documented in the help system.