ORION's Random Number Generator
What is a Random Number generator?
Random Number Generators are generating numbers in a sequence in such away that the next number has no relation with the previous numbers. There are software routines that may generate these numbers but these only approach the ideal of independence between the subsequent numbers because they still use an algorithm to calculate the next number from the previous one. There are several of these algortihms and it is difficult, though in principle not impossible, to assess from the numbers which algorithm is used.
Another approach to obtain random numbers is to use noise in nature. The most commonly used noise sources are bouncing of ping pong balls (in lotteries) or more sophisticated: radioactive decay or electron tunneling in electronic components. These processes are in principle unpredictable. ORION's Random Number Generator is of the latter kind.
RNG's are applied in cases where one needs unpredictable events. Our RNG's are being used all over the world by casinos, scientists, military experts, encryption specialists and software developers. They are used in scientific research eg. in so-called Monte Carlo simulations. They are also used in research on so called paranomral or psi phenomena whererandomness is an essential condition and they are used in encryption/decryptionapplications.
Of course casino's on the Internet are important users of the RNG. If you have a casino or are developing anytype of game or feature based on truely random numbers, you should consider using an RNG.
ORION's Random Number Generator consists of two independent analogue Zener diode based noise sources. Both signals are converted into random bitstreams, combined and subsequently transmitted in the form of bytes to the RS-232 port of your computer. Special timing circuits ensure that crucial logical operations occur at moments that the device has stable signals.
The baud rate is 9600. So the device is capable of supplying you with about 960random bytes or 7600 random bits per second
Power is drawn from the RTS and TXD signal. (pins 4 and 2 of the D-25connector). In order to work properly the RTS signal should be high (5 volts orhigher) and one should not send bytes to the device!
WARNING: part of the RNG is shielded. Do not open the device. It is not allowed to copy or use the design of the RNG without written permission of the original developer, the Foundation for Fundamental Research on Man and Matter (FREMM).
Each RNG passes a 256 run random ness test before being shipped. Each run consists of 8192 8-bit samples. The unselected results of this test are included with the package in the form of the number of bits that have been used, the over-all first bias, and an estimate of the higher order biases. Detailed test can be obtained upon request. If the first order bias is larger than1 bit in 2000 bits the RNG will be rejected. Please read the important NOTE on the next page on how to compensate further for remaining first orderbias.
The RNG is functionally similar to a 'crazy' modem sending random information to your machine. It should be connected like any modem. In some cases when the computer has a standard D-25 male connector you can plug the RNG directly into that connector. In other cases (e.g. for Apple computers) you have to connect the RNG through a standard modem cable.
The byte read from the RS-232 port should be seen as a number. The lowest value is 0 and the largest value is 255. In experiments where a binary decision is needed you will have to transform the byte (0,255) into a '0' or a'1'.
byte = read_com()
IF (byte > 127.5) then r=1
For decisions between 4, 8, 16 etc. alternatives a similar procedure can beused. If one needs to have 5 alternatives (for instance if you want to simulate a Zenercard experiment) then the procedure may be as follows:
if byte > 249 then goto start
r = int (byte/5)
Although the design is such that the device has a first order bias whichis guaranteed smaller than the specification we strongly recommend the following guidelines when using the RNG in any crucial application.
1. Have a short straight test run of the RNG at the beginning and at the end ofthe sessions, just to check for first order effects. A few seconds sampling is sufficient. Look at the supplied test programs as an example .
2. Before using the random byte as read from the RS 232 port, apply a software routine that ensures that in 50% of the samples a logical '1' will be interpreted as '0' and of course also that in 50% of the samples a logical '0'will be interpreted as a '1'. This will ensure that no systematic first order deviation will arise even when the device does not function properly (of course you might get strong second order and variance effects). The easiest way to do this is to transform a '1' into a '0' and a '1' into a '0' on odd trials.
A more sophisticated and recommended way is to XOR the random byte with a pseudo random byte. In that case the resulting bytes will even behave properly for higher order bias effects.
3. In case of psi research: Always have a no-subject condition as part of theformal design. In the no subject condition each button-press is replaced by a random wait routine. As a rule of thumb run the no-subject condition about 10 times more often than the experimental subject condition.
Due to the limited knowledge we have of the psi phenomenon we cannot specify a control condition which is guaranteed psi-free. There fore one might occasionally also find deviations in the no-subject condition. Just report these.
Requirements: Works with any DOS, Windows machine and Macintosh
Required power: None
Dimensions: appr. 15 * 30 * 40 mm
Biases: First order less than 1 in 4000; Higer order less than 1 in 14000000.
DataRate: 9600 Baud
Communication Protocol: RS232
There is software available for the Macintosh and for DOS or Windows systems. The software can be downloaded here.
The sources are available on request. Listings are already available.
Please check the order page for prices and information on ordering.