LCAU program set

Over the course of several years a collection of cellular automaton programs has evolved for use in a course at the Universidad Autónoma de Puebla entitled FORTRAN III, dedicated to graphical techniques. Besides a display of automaton evolution, the programs feature the calculation of de Bruijn diagrams (from which the periodic aspects of the evolution can be deduced), an analysis of equilibrium probabilities, and calculating ancestors.

Because of the amount of computation involved, the program set has emphasized one dimensional automata in preference to two or three dimensions. With the availability of a video controller, such as the Automatrix CAM/PC , capable of updating a whole planar array of cells while scanning the screen, more ambitious studies of bidimensional automata can be undertaken, toward which CAMEX represents an initial step.

CAMEX follows the layout of the LCAU programs, without emphasizing any single neighborhood or state set; whilst was dedicated to binary one dimensional automata with second neighbors, for example. After an initial sign-on message (which actually initialized a random number generator), there was a main menu which permitted excursions into a variety of submenus; all the menus were activated by single keystrokes. Sometimes additional symbols would follow the initial key, but a numerical prefix never generated multiple execution.

Uniformity between menus was sought, to make the significance of the keys easier to remember; the symbols ? and ! often exhibited a rather terse help panel. Only recently have the programs begun to incorporate a systematic usage of function keys, mouse movements, or even pop-up menus. However, a recognition of the general layout will assist the user in working through an otherwise rather barren environment.

With respect to LCAU , the collection should be consulted for automata which lie outside the range covered by CAMEX , and even to get a much more elaborate treatment of those lying within a common range. The reason for the first recomendation is fairly obvious, because the range of states and lengths of neighborhood to which CAMEX is adapted is a function of the CAM hardware; the best results are surely to be obtained when the software is compatible with the hardware.

Within the common range, the difficulty results from an historical anomaly which has to do with other factors entirely; the change of the design team between the Intel 8085 and the Intel 8086. In the process, no provision was made for detecting a carry originating from the overflow of segment addresses, limiting the size of arrays that could be used without a complicated addressing scheme.

The practical consequence is that CAMEX 's data space has to be apportioned with care, lest CAMEX itself become more complicated than presently convenient; therefore CAMEX lacks those portions of LCAU which might have been copied bodily. Instead, the space has been devoted to a better treatment of the same aspects of two dimensional automata, the real province of the CAM s. Even without the competition from one dimensional automata, the limitations of the architecture of the Intel 8086 and its successors are acutely apparent.

For example, de Bruijn diagrams for one dimensional automata can be calculated for three or four generations; for even as many as a dozen in the case of the simpler automata. The same limitations preclude even two generations in two dimensions and exclude three altogether.

 


Harold V. McIntosh
E-mail:mcintosh@servidor.unam.mx