Using Rule 30 to Generate Pseudorandom Real Numbers

The rule 30 cellular automaton can be used to generate pseudorandom numbers. This Demonstration looks at an oversimplified version of how the central column in the evolution of this automaton can be used to generate pseudorandom real numbers between 0 and 1.
An initial integer seed is chosen (controlled here by a slider), converted to base 2, and then converted to a string of light and dark squares (here 1s get converted to dark squares and 0s to light squares). These squares (shaded blue at the top) are padded on either side with a number of light squares, and rule 30 is evolved from this initial condition. The squares in the central column of this evolution can be regarded as the base-2 decimal expansion of a number between 0 and 1 (again, dark squares correspond to 1s and light squares to 0s). As the initial seed varies over a wide range of integers, the numbers produced by this algorithm appear to be distributed nearly uniformly over the unit interval. Among several differences between this demonstration and random number generators used in practice is that in the latter, the recording of the bits of the number generated does not begin with the first step in the evolution of the cellular automata but only after the cellular automata has been allowed to evolve for a while.



  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.

Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-Step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2017 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+