Abstract
Twisting generators of the pseudorandom normal variables can use uniform random sequences as a basis. However, such technique could provide poor quality result in cases where the original sequences have insufficient uniformity or skipping of random values. This work offers a new approach for creating the random normal variables using the Box-Muller model as a basis together with the twisting generator of uniform planes. The simulation results confirm that the random variables obtained have a better approximation to normal Gaussian distribution. Moreover, combining this new approach with the tuning algorithm of basic twisting generation allows for a significantly increased the length of created sequences without using any additional random access memory of the computer.
Highlights
The direction of Gaussian Random Number Generator (GRNG) realizes the process of creating the random variables Z with the function of normal distribution FZ ( )
In continuation of that work, in (Deon and Menyaev, 2016b) we proposed a twister generator of the complete uniform random variables using the technology of a twisting array
In order to exclude the influence of the twisting array on the computer Random Access Memory (RAM), we have perfected the previous development by proposing a generator of uniform twisting sequences of arbitrary size but without twisting array (Deon and Menyaev, 2017; 2019)
Summary
The direction of Gaussian Random Number Generator (GRNG) realizes the process of creating the random variables Z with the function of normal distribution FZ ( ). Among all of them the generators using the Box-Muller model (Box and Muller, 1958) are applied widely In this type of generation the random variables R are created using uniformly distributed random values u and v by one of the following two expressions:. In the most accessible and widespread form of use for this generator is given in Wikipedia (Wikipedia.org/wiki/Box-Muller_transform), in which the program code of generator is presented in the programming language C. This code contains the main generation cycle in the following form: if (!generate) return z1 * sigma+mu; double u1, u2; do {
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.