home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Interactive Guide / c-cplusplus-interactive-guide.iso / c_ref / csource4 / 245_01 / lca.doc < prev    next >
Encoding:
Text File  |  1987-10-28  |  31.4 KB  |  546 lines

  1.  
  2. [LCA.DOC]
  3. [Harold V. McIntosh, 20 May 1987]
  4.  
  5. 1. History.
  6.  
  7. Cellular Automata have been studied as a part of the abstract theory of
  8. computation since the time that John von Neumann became interested in the
  9. possibility of constructing self-reproducing automatic factories. Since
  10. actual factories and physical machinery involve a myriad of practical but
  11. non-essential details, he eventually followed a suggestion of Stanislaw Ulam
  12. that an abstract mathematical model would be more amenable to a demonstration
  13. of the possibilities of universal construction and self reproduction. He
  14. worked out a scheme for such an automaton, in terms of a cellular space
  15. occupying a two dimensional grid, in which each cell would be found in
  16. one of twenty eight states.
  17.  
  18. The details of von Neumann's construction remained unpublished at the time
  19. of his death, but were subsequently edited and published by A. W. Burks.
  20. Ulam's work on functional iteration and his experiments on nonlinear mappings
  21. was reported in conference proceedings, and cellular automata became a topic
  22. in the theory of abstract machines, along with the work of Edward. F. Moore,
  23. Claude Shannon, and others. Of course there were even earlier beginnings, in
  24. the studies of Warren S. McCulloch and Walter Pitts in 1943 on neural nets,
  25. followed in 1951 by a certain mathematical abstraction by S. C. Kleene, and
  26. even in the general ideas on Cybernetics introduced by Norbert Wiener in his
  27. famous book.
  28.  
  29. Public awareness of cellular automata can mostly be attributed to John Horton
  30. Conway's interest in finding a simpler configuration than von Neumann's
  31. and exploring its capabilities. Some of his results were presented in 1970 as
  32. an ecological game called Life, at a time when such concerns were popular, in
  33. Martin Gardner's monthly Mathematical Games column in Scientific American.
  34. For a period of about three years Robert T. Wainwright maintained a quarterly
  35. newsletter disseminating discoveries made by Martin Gardner's readers, some
  36. of which were followed up in later columns in Scientific American. Many of the more
  37. interesting results were obtained with the help of the graphics facilities 
  38. of a PDP-6 computer in MIT's Artificial Intelligence Laboratory.
  39.  
  40. When microcomputers began to attract popular attention, Conway's game of Life
  41. became one of the early inspirations for an application; Cromemco's "Dazzler,"
  42. a color video controller and one of the earliest peripherals, was frequently
  43. used to display the evolution of Life configurations. An early issue of Byte
  44. magazine summarized many results which had appeared in Wainwright's newsletter
  45. a decade earlier, but had still not reached mass circulation. Some other
  46. magazines, such as Omni, revived the topic, and in recent years Scientific
  47. American has returned to the subject, most recently in A. K. Dewdney's 
  48. Computer Recreations, the current successor to Martin Gardner's column.
  49.  
  50. Professional scientific interest has received a considerable impetus from
  51. the investigations of Stephen Wolfram, who undertook a computer based
  52. search through the properties of one dimensional automata, guided by some
  53. concepts from the realm of nonlinear dynamics and statistical mechanics.
  54. In any event, the microcomputers, programming languages, and video displays
  55. which are currently available are sufficient for many experimental studies
  56. of cellular automata, many of whose results have considerable artistic merit.
  57.  
  58. A recent article exploring the aesthetic side of automata theory was one
  59. entitled Abstract Mathematical Art, by Kenneth E. Perry, which appeared in
  60. the December, 1986, issue of Byte. The article included a Basic program for
  61. use on IBM/PC compatible computers, with indications that a Pascal version
  62. was available from the magazine, and a statement that the author himself
  63. had used machine language to quickly seek out the examples enumerated in his
  64. article. Several of them were shown in striking color photographs.
  65.  
  66. The idea of a one dimensional cellular automaton is quite simple, an its
  67. evolution in time is ideal for a two dimensional presentation, as on a video
  68. screen. To start with, a cell is a region, even a point, with differing forms,
  69. called states. For convenience, these states are usually numbered with small
  70. integers beginning with zero, rather than described. For the purposes of
  71. automata theory the nature of the states does not matter, only their relation
  72. to one another, and the way they change with time according to their 
  73. envoironment. Since they are abstract, they can just as well be represented
  74. by colored dots on a video screen, which is what leads to interpreting them
  75. as part of an abstract artistic design.
  76.  
  77. To make a one dimensional automaton, a series of cells is strung out in a
  78. line, the simplest assumption being that all the cells have the same number
  79. of similar states, and that the rules of evolution will be the same for all
  80. of them. The idea of forming the cells into a line implies a linear order,
  81. but of course other arrangements are possible, both in terms of the dimension
  82. and the connectivity of the cells. This is the second element of definition
  83. for a cellular automaton - the relationship between the cells, or the kinds
  84. of neighborhoods which they form. Again, the simplest neighborhood would
  85. consist of a cell and its nearest two neighbors, and generally speaking we
  86. would take a neighbborhood to consist of r neighbors on each side, giving
  87. 2r+1 for the total number of cells in a neighborhood.
  88.  
  89. There are some small quibbles to be made. If a chain is finite, it has ends,
  90. which surely do not have the same neighborhoods as the interior cells. Either
  91. they can be treated differently, or the chain can be imagined to close into
  92. a ring, which would preserve the uniformity of all the neighborhoods. Also,
  93. it is considered preferable to work with symmetric neighborhoods, each one
  94. centered on its own cell, rather than worrying about irregular neighborhoods.
  95. An exception occurs because there are times when only one neighbor would be
  96. desired, always on the same side.
  97.  
  98. Thus there arises the notation (k,r) for a linear cellular automaton which
  99. has k states within each cell, and such that it, together with r cells on
  100. either side, is considered to form a neighborhood.
  101.  
  102. There is one final ingredient in the definition of a cellular automaton,
  103. which is the rule of transition by which the cell changes state from one
  104. generation to the next, conventionally assumed to be the same rule for each
  105. neighborhood. It is the judicious selection of a rule as much as anything
  106. that makes a particular automaton interesting or not.
  107.  
  108. Conway's game of Life was the result of a particular choice of rule for a
  109. two dimensional binary automaton - two states per cell - whose neighborhoods
  110. contained the cell in the center and the eight cells touching it, four of
  111. them laterally and four of them diagonally. The announced critera by which
  112. that particular rule was chosen were that a field of cells should neither
  113. dwindle away to nothing - all zeroes - or eventually fill up completely -
  114. all ones. Reportedly, he examined many different rules before choosing the
  115.  particular one which gave us his famous game; even so, so much variety was
  116. encountered with that one particular rule that years passed before many
  117. others were studied.
  118.  
  119. Wolfram's recent work, mostly done at the Institute for Advanced Studies in
  120. Princeton, systematically examined all the possible rules for one dimensional
  121. automata. His recent book summarizes his and some other results in an extensive
  122. appendix. In two dimensions there are far too many possibilities - more so
  123. even than in one dimension - for there to be a chance to try everything, even
  124. with a very fast computer. Notwithstanding, Dewdney's column in a recent issue
  125. of Scientific American describes a three dimensional variant of Life examined
  126. by Carter Bays. However, the one dimensional automata of type (2,1) represent
  127. a reasonable starting point for systematic studies.
  128.  
  129. For such an automaton, a neighborhood contains three cells, while each can
  130. have two states, so altogether there are eight possible neighborhoods. Since
  131. there is nothing to require evolution of a given neighborhood to lead to one
  132. value of the new cell or another, there are 256 possible ways that each of the
  133. eight possible neighborhoods can evolve into the next generation, starting
  134. with the possibility that everything evolves into zero and ending with the
  135. possibility that everything evolves into ones. The easiest way to enumerate
  136. the possibilities is to make up a binary number whose eight digits tell
  137. how the neighborhoods 000, 001, 002, and so on evolve.
  138.  
  139. Unfortunately, the number of possibilities increase drastically if either
  140. the number of states for a single cell increases, or the number of neighbors
  141. increases. Thus a (3,1) automaton - three states with nearest neighbors -
  142. has 3*3*3 or 27 neighborhoods, and the total number of possible rules would
  143. be 3 to the power 27, somewhere on the order of 10 to the power 12, so they
  144. are not soon going to be studied one by one. Alternatively, the combination
  145. (2,2) would have 32 different neighborhoods, and thus 2 to the power 32
  146. different rules, which is "only" in the range of 10 to the tenth power.
  147.  
  148. To obtain a reasonable sampling of even the smaller linear automata, Wolfram
  149. used the idea which was already implicit in Conway's statement of his rule,
  150. that the evolutionary criterion should depend on the number of cells in the
  151. neighborhood, but not on their particular arrangement. Talking in such terms
  152. reveals some hidden assumptions about our vocabulary. In Conway's binary
  153. game, zero represented a dead cell, one a live cell, and his rules were
  154. stated in terms of the number of live cells in the neighborhood. It is a
  155. simple extension of this idea to assign numbers (weights, if you wish) to
  156. the states, and make the transition depend only on their sum. A rule gotten
  157. this way is called a totalistic rule; not all rules are totalistic, but they
  158. lead to a more manageable sampling of all the possible rules.
  159.  
  160. 2. The program collection.
  161.  
  162. This disk contains two kinds of programs. The first group consists of:
  163.  
  164.     LCA21.C - evolution of (2,1) automata
  165.     LCA22.C - evolution of (2,2) automata
  166.     LCA23.C - evolution of (2,3) automata
  167.     LCA31.C - evolution of (3,1) automata
  168.     LCA32.C - evolution of (3,2) automata
  169.     LCA33.C - evolution of (3,3) automata
  170.     LCA41.C - evolution of (4,1) automata
  171.     LCA42.C - evolution of (4,2) automata
  172.     LCA43.C - evolution of (4,3) automata
  173.  
  174. These nine programs are all quite similar, but since they each contain a
  175. distinct selection of sample rules, and since there are slight differences
  176. in indexing and ranges of indices, they are included as separate programs.
  177.  
  178. The second group of programs contains: 
  179.  
  180.     ONE31.C   - cycles and gliders of period 1 for (3,1) automata
  181.     ONE32.C   - cycles and gliders of period 1 for (3,2) automata
  182.     ONE41.C   - cycles and gliders of period 1 for (4,1) automata
  183.     ONE42.C   - cycles and gliders of period 1 for (4,2) automata
  184.     TWO31.C   - cycles and gliders of period 2 for (3,1) automata
  185.     TWO41.C   - cycles and gliders of period 2 for (4,1) automata
  186.     THREE31.C - cycles and gliders of period 3 for (3,1) automata
  187.     THREE41.C - cycles and gliders of period 3 for (4,1) automata
  188.     FOUR31.C  - cycles and gliders of period 4 for (3,1) automata
  189.  
  190. which are likewise all fairly similar.
  191.  
  192. The cycle programs are based on the concept of a de Bruijn diagram, which is
  193. much used in shift register theory. If a neighborhod is the string of cells
  194. just sufficient to determine the evolution of its central cell, we can see
  195. how neighborhoods might be strung together to determine the evolution of a
  196. whole sequence of cells. Let us say that in succession we abandon the left
  197. cell of a neighborhood and add new cell on the right. We are now ready to
  198. calculate the evolution of the cell to the right of the original cell; by
  199. repeating the process we can work out the evolution of a whole series of
  200. cells.
  201.  
  202. In this process there is always an overlap of a fairly long string of cells;
  203. however, just two for a (2,1) automaton. These cores can be laid out in a
  204. diagram, a long string would be the easiest conceptually but it is more
  205. practical to arrange them as nodes in a plane, labelling each with whatever
  206. sequence of values the core cells might have.
  207.  
  208. Next, these nodes can be linked together according to the way they overlap
  209. when used to form a longer chain. Thus there are two outgoing links for each
  210. node, and two incoming links, for the (2,1) automaton: 01 could be followed
  211. by either 10 or 11, and could be preceded by either 00 or 10. Generally, a
  212. (k,r) diagram would have k to the power 2r nodes, each of them with k in links
  213. and k out links; this full diagram is called a de Bruijn diagram for k symbols
  214. and 2r stages.
  215.  
  216. The de Bruijn diagram lays out the possibilities; among its other uses it can
  217. disclose how many distinct words of r letters can be made up within an alphabet
  218. of k different letters. But we are interested in another application - finding
  219. sequences which do not change as evolution goes on, for example. Since the
  220. links in a de Bruijn diagram are just long enough to calculate one generation
  221. of evolution for one cell, we can make comparisons with the original cell. If
  222. the central cell evolves into itself, it qualifies for a still life. If it
  223. evolves into its left neighbor, it qualifies for a right-shifting string. many
  224. other variations are conceivable - for example a binary cell might evolve into
  225. its complement.
  226.  
  227. Some of these properties - shifting, but not complementation, for example - are
  228. consistent with the rule of evolution from generation to generation. That is,
  229. shifting will not affect evolution because evolution has been assumed to
  230. follow the same rule for every cell. But only in certain cases will we find
  231. that complements have a complementary evolution. Going beyond binary automata
  232. there are many more opportunities for the permutation of states, and there
  233. will always be certain automata which incorporate this symmetry into their
  234. rules of evolution.
  235.  
  236. Thus, to find all the sequences of states which do not change from one
  237. generation to another, we only have to mark out the links in the de Bruijn
  238. diagram for which the central cell does not change, and build up strings of
  239. cells all sharing this same property. A similar construction applies for
  240. shifting states.
  241.  
  242. Ultimately we are interested in cycles of the de Bruijn diagram, not the
  243. transients leading into them, because these are the chains which can form
  244. either rings of cells or chains infinite in both directions. The set of cycle
  245. programs each works out these loops, and displays them on the console. The
  246. process just outlined gives results valid for one generation of evolution,
  247. but similar ideas apply to two, three, or more generations. The requirement
  248. in each case is for a string long enough to produce the evolution desired;
  249. the diagram then shows how to join these strings together into arbitrary
  250. sequences.
  251.  
  252. Similar ideas can be used to find sequences which evolve into zeroes or
  253. other constant values in so many generations. All calculations require
  254. diagrams whose size grows exponentially with the radius of the neighborhood
  255. or the number of generations of evolution involved. Thus, only the smallest
  256. values of these parameters are feasible within the memory size available to
  257. the programs, or the length of time needed to obtain the results.
  258.  
  259. A third group of programs is concerned with spatial periodicity rather than
  260. temporal periodicity; in other words it is concerned with the possible
  261. periods of cycles in a chain of length n. In contrast, the objective of
  262. the second group of programs was to find the states of a given period, no
  263. matter what the length of the ring. Now the length is fixed and we want to
  264. know the possible periods.
  265.  
  266. The programs are:
  267.  
  268.     CYCLE21.C - periods of (2,1) rings 
  269.     CYCLE22.C - periods of (2,2) rings 
  270.     CYCLE23.C - periods of (2,3) rings 
  271.     CYCLE31.C - periods of (3,1) rings
  272.     CYCLE32.C - periods of (3,2) rings
  273.     CYCLE41.C - periods of (4,1) rings
  274.     CYCLE42.C - periods of (4,2) rings
  275.  
  276. The computation is similar to the one carried out for the de Bruijn diagram,
  277. but the basic element is one of the k to the nth possible strings of cells.
  278. The evolution of each one of them is computed and stored in an array. There
  279. can be but one second generation successor to each first generation string,
  280. not the k to be found in the de Bruijn diagram; otherwise the analysis is the
  281. same. The results are the periodic cycles, reported as a series of pairs of
  282. strings and evolutes.
  283.  
  284. Programs from all three groups will prompt for the information they need. For
  285. a cycle analysis, the first requirement is the rule number. For a totalistic
  286. automaton, it would consist of the string of values to be assigned to the
  287. respective sums 0, 1, 2, and so on. Only for the program LCA31 is storage
  288. space sufficient to work with the 27 values which can be assigned all the
  289. distinct values of three states; a totalistic rule number can be given, as
  290. well as a full specification.
  291.  
  292. The evolutionary programs contain a selection of stored rules, selected from
  293. many random choices to illustrate some particular points of evolution, or just
  294. because they looked nice. One of these is selected, somewhat at random, along
  295. with a random initial line, all ready to run, when the program is started. If
  296. the initial choice is not wanted, or after the first run has completed, any of
  297. the data can be edited in preparation for the next run.
  298.  
  299. If the display turns out to be uninteresting, or there is no desire to wait
  300. out the full 45 seconds which it requires, striking any key will stop it.
  301.  
  302. 3. What to look for.
  303.  
  304. To watch the evolution of an arbitrary linear automaton from a random initial
  305. configuration is to see a great deal of confusion. Gradually - in some cases
  306. quite quickly - it becomes apparent that each rule of evolution has its own
  307. personality, and that as rules and types of automata are varied, similarities
  308. are as apparent as differences. This is presumably what lead Conway to seek
  309. out rules for which configurations eventually settled down to simple activity
  310. rather than disappearing entirely, remaining motionless, or filling up the
  311. entire space.
  312.  
  313. Wolfram laid down a serviceable classification into four categories
  314.  
  315.     class i - evolution to a uniform state
  316.     class ii - evolution to isolated cyclic states
  317.     class iii - evolution to comprehensive cyclic states
  318.     class iv - evolution to complex isolated states
  319.  
  320. which were derived from some classifications in nonlinear mechanics. His
  321. attention was particularly attracted to the class iv states. It seems that
  322. these are to be found for rules whose de Bruijn diagrams contain certain
  323. loops. These can be readily detected for short periods at least.
  324.  
  325. A good starting point, having selected a specific rule, is to work out a
  326. table of periods (time repetition) and cycles (space repetition) in which a
  327. given row shows the number of cycles of given period in rings of length given
  328. by the columns. Entries for an entire row can be deduced successively from the
  329. programs ONEIJ, TWOIJ, THREEIJ, and so on. It may be a bit disappointing that
  330. so few rows can be obtained within the limits of computer memory and running
  331. time that presently exist. Nevertheless, the exponential growth of resources
  332. required ensures that rows or columns will only be added one at a time, and
  333. gradually at that. Still, a few rows can actually be done, and the information
  334. obtained can be quite informative.
  335.  
  336. The columns of this table can be found from the CYCLEIJ series of programs;
  337. again practical considerations limit the lengths of the rings studied to the
  338. order of ten; more for binary automata and less for those with more states.
  339.  
  340. Certain theoretical conclusions do not depend on practical limitations. For
  341. example, a there are at most k to the power n rings of n cells in a (k,r)
  342. automaton, and evolution is uniquely defined. Some ring must repeat itself,
  343. no matter what the starting ring, after k to the power n generations; more
  344. than that can't all be different. In practice, the number of generations
  345. elapsing before repetition is a very small compared to the absolute maximum.
  346. In any event, there is an exponential (but finite) limit to the periods shown
  347. in the period-cycle table.
  348.  
  349. Statistics of interest concerning the cycles include: the number of cycles and
  350. their lengths, the height of the transient trees leading into the cycles, and
  351. the convergence factor at each node of these trees.
  352.  
  353. The rows of the table can be found from the de Bruijn programs; since 2r+1
  354. cells are needed to ascertain a generation of evolution, only about half as
  355. periods as cycles can be worked out for a given quota of computer resources.
  356. Similar theoretical conclusions are possible, since the periods are gotten
  357. from a subset of the de Bruijn diagram. A 2r-stage de Bruijn diagram for k
  358. symbols has k to the power 2r nodes; k times as many links. Once this number
  359. of links has been used up in constructing a path through the diagram, one of
  360. them would have to be repeated. Thus there is also an exponential upper bound
  361. in the rows of the period-cycle table. For example, if an automaton has a
  362. cycle of period 2, it must already show up in some short ring; if it has not
  363. appeared in rings below a certain limit, it will never appear in longer rings.
  364.  
  365. Similar statistics can be compiled for the de Bruijn diagrams: the number of
  366. periods and their lengths, the number of transients leading into loops, and
  367. the corresponding convergence and divergence factors. Failed loops are still
  368. interesting, they correspond to strings which are periodic, but which dwindle
  369. away with each generation.
  370.  
  371. Both the cycle diagrams and the period diagrams may have intersecting loops;
  372. this simply means that choices are present at certain junctures in working up
  373. a chain of cells with a certain property, leading to a greater variety of
  374. sequences than would oherwise occur. This choice is particularly vivid in the
  375. de Bruijn diagram when one of the loops consists of a single node of identical
  376. cells embedded in another loop, since these can be strings of Wolfram's class
  377. iv.
  378.  
  379. Although the de Bruijn diagram can be used to reveal the periodicities of a
  380. given cellular automaton, it can also be used in automaton synthesis. That
  381. is, desired loops can be marked out first in the diagram, and then a rule
  382. chosen which respects the links. For period 1 properties the mapping has to
  383. be direct, since each link in the de Bruijn diagram corresponds to a distinct
  384. neighborhood in the automaton. Including or excluding it from the period
  385. diagram either determines or limits the value of the transition for that
  386. neighborhood. For longer periods the evolution corresponds to a composite
  387. rule, which may or may not be factorizable in the requird manner.
  388.  
  389. Another use of the period diagram is to obtain ancestors of a given chain.
  390. The simplest application is to find the ancestors of constant chains, which
  391. follows readily from the fact that each link represents the evolution of the
  392. central cell in one neighborhood. All the links evolving into zero determine
  393. the chains which must evolve into zero; conversely demanding that given loops
  394. evolve into zero determines the rules for which such an evolution is possible.
  395. For a binary automaton, it would determine the rule uniquely. An interesting
  396. exercise is to show that for totalistic automata, the ancestor diagram for
  397. constant chains consists of pure loops, without any transients at all.
  398.  
  399. More subtle than Wolfram's class iv automata is the fact that some automata
  400. seem to exhibit natural barriers. For some rules it is observed that there
  401. are areas of independent evolution, which seem to go about their business
  402. independently of what is happening in other regions. Consulting the de Bruijn
  403. diagram, it is found that there are certain nodes, for which all incoming or
  404. outgoing links survive in the period diagram, even if they do not continue 
  405. on to form closed loops. It is only necessary that there is an unbroken chain
  406. from a node with complete incoming links to another (possibly the same) with
  407. complete outgoing links. Clearly, certain partial variants on this theme are
  408. also possible.
  409.  
  410. Historically, de Bruijn diagrams were created in order to solve the problem
  411. of finding all the distinct sequences of certain symbols. This idea can be
  412. applied to a period diagram, by asking whether all possible sequences of cells
  413. can appear as possible evolutions. Since the period diagram is a restriction
  414. of the de Bruijn diagram, it may be suspected that they may not; this confirms
  415. the existence of "Garden of Eden" states for cellular automata. These are
  416. chains of cells which can only be seen as intital states for an automaton,
  417. because they have no ancestors and cannot arise during the course of evolution
  418. from any other states.
  419.  
  420. The programs in the present collection do not detect Garden of Eden states,
  421. but they can be found by using state sequencing techniques from the theory
  422. of automata, or from a detailed examination of the chains produced by the
  423. cycle programs, which are not presently included in the display produced by
  424. these programs. 
  425.  
  426. Binary automata may be judged to be less interesting because they "don't do
  427. anything" or fall into Wolfram's classes i and ii; but there are other ways
  428. in which automata with larger numbers of internal states can fall into a
  429. pattern of restrictive behaviour. For many rules, watching the screen display
  430. for a while will reveal that one of the colors has disappeared. This would be
  431. especially noticaeable for a rule in which one value never appeared in the
  432. rule, because it would have to be be absent in all lines after the first.
  433.  
  434. Generally speaking, we would be dealing with a subautomaton - one for which a
  435. subset of states could be found which was closed under evolution. That is,
  436. states in that subset would evolve only into each other and into no others.
  437. Many automata show extreme examples of this behaviour - dead states evolve
  438. only into dead states, using Conway's metaphor. Thus a whole class of automata
  439. comprised of those with a quiescent state, could be characterized by saying
  440. that the quiescent state belonged to a subautomaton.
  441.  
  442. There is another mathematioal concept related to subsets, which is the idea
  443. of equivalence relations. According to this concept, two or more states of
  444. the automaton might be regarded as being interchangeable. If not actually
  445. identical, there is no essential difference between them. Watching the
  446. evolution of certain automata on the screen, there sometimes seems to be
  447. a wash of color laid over an underlying pattern. The pattern seems to evolve,
  448. while the color overlay has a life of its own. This is an example of a factor
  449. automaton, in which the overlaid color is equivalent to black, the general
  450. background in this series of programs.
  451.  
  452. Finally, there are mappings from one automaton to another. One of the simplest
  453. examples would be complementing all the cells of a binary automaton. The
  454. complemented automaton would probably not evolve according to the same rules,
  455. but it might. For automata whose states are represented by television colors,
  456. interchanging the colors would be such a mapping. Aesthetically the difference
  457. is striking, but mathematically it is the same automaton. 
  458.  
  459. It is instructive to tinker with both the initial array and with the rule of
  460. evolution of an automaton. The LCAIJ programs include a generator of random
  461. numbers which can be used to either set up a rule or the initial array. The
  462. numbers generated do not often have long runs, but an interesting aspect of
  463. most automata is to see how they evolve when the initial state contains some
  464. long runs, particularly of a quiescent state. An option allows generating
  465. such a state; an editing option allows a complete revision of the initial
  466. state. Some programs have an undocumented feature which allows copying the
  467. initial eighth of the pattern, which has the practical consequence of forcing
  468. the arrival at the final cycle more rapidly. The typical lengths of transients
  469. increases with ring length, and lies in the hundreds or thousands for rings of
  470. length around 20. Thus, the transient time would be extremely long for the
  471. video line used by these programs.
  472.  
  473. For some rules patience is required to obtain an initial state which shows
  474. some of the more delicate class iv objects, and recourse to the de Bruijn or
  475. cycle programs may be necessary to see what the interesting structures are.
  476.  
  477. Knowing how barriers, cycles, and class iv separating intervals are related
  478. to the de Bruijn diagram, the evolutionary rule may often be adjusted to make
  479. a promising rule show cleaner or more desirable behaviour. This adjustment
  480. is necessarily indirect for those programs which only use totalistic rule
  481. specifications, but for those programs in which the direct parameters are
  482. sufficiently few, the rule can be tailored exactly.
  483.  
  484. If the totalistic rules do not allow such fine adjustment, they do have a
  485. statistical property which is useful. There are more ways to form sums in
  486. the middle range than for the extremes; one might think in terms of the
  487. binomial distribution. Thus the values assigned the middle range will be
  488. relatively influential in determining the overall behaviour of the automaton,
  489. while the extremes can be used for fine adjustments. One extreme determines
  490. what happens to long sequences of zeroes, the other to long sequences of
  491. k-1's, and in both cases to sequences in which these extremes dominate. This
  492. also means that the near extremes determine what happens to the fringes of
  493. regions dominated by the middle values.
  494.  
  495. Of course, there ia a whole art to trying to read out general features of
  496. the automaton directly from its rule specification.
  497.  
  498. 4. References.
  499.  
  500. Elwyn R. Berlekamp, John H. Conway, and Richard K. Guy, Winning ways for
  501. your mathematical plays, Academic Press, 1982  (ISBN 0-12-091152-3) vol. 2,
  502. chapter 25
  503.  
  504. D. Buckingham, Some facts of life, Byte 3 (1978) p. 54
  505.  
  506. A. K. Dewdney, Computer Recreations - Building computers in one dimension
  507. sheds light on irreducibly complicated phenomena, Scientific American, May
  508. 1985, pp. 10-16.
  509.  
  510. Martin Gardner, Mathematical Games, Scientific American, October 1970
  511.  
  512. Fred Hapgood, Let there be Life, Omni, v. 9, #7 (April 1987) pp40-46, 116-117.
  513.  
  514. Brian Hayes, Computer Recreations - The cellular automaton offers a model
  515. of the world and a world unto itself, Scientific American, March 1984,
  516. pp 10-16.
  517.  
  518. Stephen Levy, Hackers: Heroes of the computer revolution, Anchor Press/
  519. Doubleday, Garden City, New York, 1984 (ISBN 0-385-19195-2), chapter 7.
  520.  
  521. O. Martin, A. Odlyzko, and S. Wolfram, Algebraic aspects of cellular automata,
  522. Communications in Mathematics and Physics 93 (1984) p.219
  523.  
  524. John von Neumann, Theory of self-reproducing automata (edited and completed by
  525. A. W. Burks), University of Illinois Press, 1966.
  526.  
  527. Kenneth E. Perry, Abstract mathematical art, Byte, December 1986, p. 181. 
  528.  
  529. William Poundstone, The recursive universe, William Morrow and Company, New
  530. York, 1985 (ISBN 0-688-03975-8).
  531.  
  532. Kendall Preston, Jr., and Michael J. B. Duff, Modern cellular automata, Plenum
  533. Press, New York, 1984 (ISBN 0-306-41737-5).
  534.  
  535. S. Ulam, On some mathematical problems connected with patterns of growth
  536. of figures, in A. Burks (ed.) Essays on cellular automata, University of
  537. Illinois Press, 1970.
  538.  
  539. Stephen Wolfram, Statistical mechanics of cellular automata, Reviews of Modern
  540. Physics 55 (1986) pp. 601-644.
  541.  
  542. Stephen Wolfram, Theory and applications of cellular automata, World Scientific,
  543. 1986 (ISBN 9971-50-124-4 pbk)
  544.  
  545. [end]
  546.