The Cellular Automata of John von Neumann
by Renato Nobili  - Released on May 2007 - Revised on August  2008

R-arrow Back to the Homepage

WJVN.EXE is the first complete Microsoft Windows version of an application for the practical implementation of John von Neumann's cellular automata. Compared to previous versions, this is much more stable, user-friendly and provided with examples and detailed explanations on usage and scope. The program works under Windows 98, 2000, XP and Vista (with the known problems with *.HLP and *.CHM help files). To install the program in your PC, simply decompress WJVN.ZIP in a new directory (typically \WJVN) and click on WJVN.EXE to start the program. This directory contains the files listed in README.TXT as well as the folders EVN and JVN, which include respectively the automata of the extended von Neumann (EVN) type and the John von Neumann (JVN) type. To remedy for possible file corruptions or accidental modifications, you can recover in any moment the original EVN and JVN files provided by the Author from EVN.ZIP and JVN.ZIP in the main directory.

The "Self-reproducing Automaton":


Movie of a self-reproducing automaton implemented by the program WJVN.EXE. Unfortunately, it would take a very long time to self-reproduce really. Actually, it is a universal constructor provided with a reading-writing arm (RW-arm) gathering information from a tape, and a constructing arm (C-arm) building the cell assembly coded by the tape. The machine does the following: (i) copies a tape coding for an arbitrarily selected assembly of quiescent cells (fragment);(ii) creates the cell assembly encoded by the tape in the proximity of the tape origin; (iii) releases an activation pulse to the cell assembly just created. The latter operation is necessary for the subsequent self-reproduction of the copied automaton, if the cell assembly coded by the tape is the entire automaton (without tape).

In the movie shown above, can you note the following stages of the construction process?

) The RW-arm reads a piece of tape in order to gather information for initial C-arm positioning. Correspondingly, the C-arm elongates forwards and upwards to reach a suitable position.
2) The RW-arm goes back to the initial position to start the tape-copying procedure.
3) The RW-arm reaches the tape end. Correspondingly, the C-arm elongates by a same length.
4) The RW-arm retracts back to the initial position to read the tape, while the C-arm retracts to copy the tape.
5) The RW-arm elongates reading the tape in order to create the desired object.
6) The C-arm moves and positions its end to start up the constructed object by applying an activation pulse just onto the left-bottom blue arrow.

7) Both the RW-arm and the C-arm retract and return to their initial positions. Thus, in principle, the process can continue indefinitely.

Thus, were the tape coding for the automaton itself (with all cell states in their
quiescent modes), the automaton would create a copy of itself and, at the end of the construction process, the copy would be in turn activated so as to produce another copy, and so on.

Click here to download the Program archive WJVN.ZIP (798 kB)

This Program is protected by Copyright ã 2006. This version includes the help file (manual) WJVN. HLP. It can be freely distributed and used only for educational purposes.
Archive content: WJVN.EXE (beta-version); WJVN.INI; \EVN (folder wirth EVN-automata); \JVN (folder with JVN-automata); EVN.ZIP (the content of folder \EVN); JVN.ZIP (the content of folder \EVN); WJVN.HLP (WinhHelp manual); WJVN.CNT (WinHelp content table); readme.txt.

Click here to download WJVN-CHM.ZIP. This version includes the Help file in CHM format.

The Main-View and the Synoptic-View windows of the Program


At start, the program WJVN.EXE appears as a window in which a rectangular portion of the 640x480 automaton lattice is shown with the resolution of 8x8 = 64 pixels per cell. In this representation 7x7 = 49 pixels are used to represent the state of a single cell state as a small colored icon. The remaining 15 pixels are used to evidence the  cell-lattice grid. This window is defined the Main View in order to be distinguished from the Synoptic view window, where the cell lattice is shown with the resolution of one pixel per cell.

R-arrow Back to the Homepage