Collected Essays

Home > Other > Collected Essays > Page 22
Collected Essays Page 22

by Rucker, Rudy


  In July, John Walker mailed me a copy of his first version of what would eventually become the Autodesk software package called CA Lab: Rudy Rucker’s Cellular Automaton Laboratory. Walker’s program was such a superb hack that it could run CA rules nearly as fast at the CAM-6 board, but without any special purpose hardware. Not only did Walker’s program run my then-favorite CA rule called Brain maybe 30% faster than my best hack at the same thing, but his software was designed in such a way that it was quite easy for users to add new rules.

  I began pushing really hard for the job. We went back and forth for a few weeks, and August 15 I started a three-month contract as a consultant at Autodesk. The main thing I did was to test out Stephen Wolfram’s new mathematics program Mathematica on a Mac II that Autodesk lent me. The idea was to use Mathematica to find some interesting new graphics algorithms. I found all kinds of things, but that’s a story for a different essay.

  When my consulting contract ran out in November 1988, Autodesk still wasn’t quite sure about whether to really hire me full-time. That’s when I firmed up the idea that John Walker and I should pool all our CA knowledge and create the unified CA Lab product. I had a lot of ideas for new CA rules to feed to Walker’s simulator, and I could write the manual. Putting together CA Lab would be a specific thing I could do during my first year at Autodesk. The deal was okayed, and to make my joy complete, John magnanimously agreed to put my name on the package cover.

  As I write this, it’s April 10, 1989, and we’re planning to ship the product next month. The code seems to be all done, and when I finish this section the manual will be done too, given one more frantic round of corrections.

  So, okay, Rudy, finish it.

  When I look at how completely cellular automata have transformed my life in the last four years I can hardly believe it. The most exciting thing for me to think about is how CA Lab going to transform the lives of some of you who use it; and how you in turn will change the lives of others around you.

  A revolutionary new idea is like an infection that’s actually good for the people who get it. I caught cellular automata in 1985, and I’ve put them on CA Lab so you can catch them too.

  What happens next? It’s up to you.

  * * *

  Note on “Cellular Automata”

  Written 1989.

  Appeared in the CA Lab manual, Autodesk, 1989.

  After my initial interest in cellular automata, the magazine Science 85 had hired me to do a number of articles for them in the past, so I convinced them to send me to Princeton and Cambridge to interview the new cellular automatists. The “Modern Cellular Automata” section of this essay was adapted from the article I wrote. As it turned out, an editor at Science 85 found cellular automata too esoteric, so in the end the article actually appeared in Isaac Asimov’s Science Fiction Magazine, April, 1987.

  CA Lab was an educational DOS software package for investigating cellular automata. I have to admit that my tone goes a little over the top about the virtues of cellular automata and Artificial Life. Certainly this was one of the least bland computer manuals ever written. The first edition of the manual even included the “brain-eating” scene from my novel Software as a footnote, though the vice-president of Marketing had this removed from subsequent printings.

  John Walker, one of the founders of Autodesk, wrote most of the code for CA Lab. Although CA Lab is out of print, John Walker has created an improved freeware version of the program for Windows called Cellab. Cellab is available for download from my Web site or from Walker’s Web site. Walker’s site has many other goodies, such as the complete U. S. tax code. I think he gets something like a hundred thousand visits a day.

  It’s worth mentioning that Walker was an inspiration for the character Roger Coolidge in my transreal novel The Hacker and the Ants. As John wasn’t quite satisfied with my ending—in which Roger Coolidge dies—he wrote his own alternate ending—in which Roger Coolidge lives. John’s alternate ending to The Hacker and the Ants can still be found on site.

  Life and Artificial Life

  Artificial Life is the study of how to create man-made systems which behave as if they were alive.

  It is important to study life because the most interesting things in the world are the things that are alive. Living things grow into beautiful shapes and develop graceful behavior. They eat, they mate, they compete, and over the generations they evolve.

  In the planetary sense, societies and entire ecologies can be thought of as living organisms. In an even more abstract sense, our thoughts themselves can be regarded as benignly parasitic information viruses that hop from mind to mind. Life is all around us, and it would be valuable to have a better understanding of how it works.

  Investigators of the brand new field of Artificial Life, or A-Life, are beginning to tinker with home-brewed simulations of life. A-life can be studied for its scientific aspects, for its aesthetic pleasures, or as a source of insight into real living systems.

  In the practical realm, Artificial Life provides new methods of chemical synthesis, self-improving techniques for controlling complex systems, and ways to automatically generate optimally tweaked computer programs. In the future, Artificial Life will play a key role in robotics, in Virtual Reality, and in the retrieval of information from unmanageably huge data bases.

  One can go about creating A-Life by building robots or by tailoring biochemical reactions—and we’ll talk about these options later in this essay. But the most inexpensive way to go about experimenting with A-Life is to use computer programs.

  What are some of the essential characteristics of life that we want our A-Life programs to have? We want programs that are visually attractive, that move about, that interact with their environment, that breed, and that evolve.

  Three characteristics of living systems will guide our quest:

  Gnarl

  Sex

  Death.

  This essay includes sections on Gnarl, Sex, and Death, followed by three sections on non-computer A-Life.

  Gnarl

  The original meaning of “gnarl” was simply “a knot in the wood of a tree.” In California surfer slang, “gnarly” came to be used to describe complicated, rapidly changing surf conditions. And then, by extension, “gnarly” came to mean anything that included a lot of surprisingly intricate detail.

  Living things are gnarly in that they inevitably do things that are much more complex than one might have expected. The grain of an oak burl is of course gnarly in the traditional sense of the word, but the life cycle of a jellyfish, say, is gnarly in the modern sense. The wild three-dimensional paths that a hummingbird sweeps out are kind of gnarly, and, if the truth be told, your ears are gnarly as well.

  A simple rule of thumb for creating Artificial Life on the computer is that the program should produce output which looks gnarly.

  “Gnarly” is, of course, not the word which most research scientists use. Instead, they speak of life as being chaotic or complex.

  Chaos as a scientific concept became popular in the 1980s. Chaos can be defined to mean complicated but not arbitrary.

  The surf at the shore of an ocean beach is chaotic. The patterns of the water are clearly very complicated. But, and this is the key point, they are not arbitrary.

  For one thing, the patterns that the waves move in are, from moment to moment, predictable by the laws of fluid motion. Waves don’t just pop in and out of existence. Water moves according to well understood physical laws. Even if the waves are in some sense random, their motions are still not arbitrary. The patterns you see are drawn from a relatively small range of options. Everything you see looks like water in motion; the water never starts looking like, say, cactuses or piles of cubes. The kinds of things that waves “like to do” are what chaoticians call “attractors” in the space of possible wave behaviors.

  Note that the quantum uncertainties of atomic motions do in fact make the waves random at some level. As Martin Gardner once said to me, “Quantum mec
hanics ruins everything.” But quantum mechanics is something of a red herring here. The waves would look much the same even if physics were fully deterministic right down to the lowest levels.

  As it turns out, you don’t need a system as complicated as the ocean to generate unpredictable chaos. Over the last couple of decades, scientists have discovered that sometimes a very simple rule can produce output which looks, at least superficially, as complicated as physical chaos. Computer simulations of chaos can be obtained either by running one algorithm many times (as in a simulation of planetary motion), or by setting up an arena in which multiple instances of a single algorithm can interact (as with a cellular automaton). A sufficiently complex chaotic system can appear fully unpredictable.

  Some chaotic systems explode into a full-blown random-looking grunge, while others settle into the gnarly, warped patterns that are known as strange attractors. A computer screen filled with what looks like a seething flea circus can be a chaotic system, but the fractal images that you see on T-shirts and calendars are pictures of chaos as well. Like all other kinds of systems, chaotic systems can range from having a lesser or a greater amount of disorder. If a chaotic system isn’t too disorderly, it converges on certain standard kinds of behavior—these are its attractors. If the attractors are odd-looking or, in particular, of an endlessly detailed fractal nature, they are called strange attractors.

  To return to the surf example, you might notice that the waves near a rock tend every so often to fall into a certain kind of surge pattern. This recurrent surge pattern would be an attractor. In the same way, chaotic computer simulations will occasionally tighten in on characteristic rhythms and clusters that act as attractors.

  But if there is a storm, the waves may be just completely out of control and choppy and patternless. This is full-blown chaos. As disorderliness is increased, a chaotic system can range from being nearly periodic, up through the fractal region of the strange attractors, on up into impenetrable messiness.

  Quite recently, some scientists have started using the new word complexity for a certain type of chaos. A system is complex if it is a chaotic system that is not too disorderly.

  The notions of chaos and complexity come from looking at a wide range of systems—mathematical, physical, chemical, biological, sociological, and economic. In each domain, the systems that arise can be classified into a spectrum of disorderliness.

  At the ordered end we have constancy and a complete lack of surprise. One step up from that is periodic behavior in which the same sequence repeats itself over and over again—as in the structure of a crystal. At the disordered end of the spectrum is full randomness. One notch down from full randomness is the zone of the gnarl.

  No Disorder

  Low Disorder

  Gnarly

  High Disorder

  Math

  Constant

  Periodic

  Chaotic

  Random

  Matter

  Vacuum

  Crystal

  Liquid

  Gas

  Pattern

  Blank

  Checkers

  Fractal

  Dither

  Flow

  Still

  Smooth

  Turbulent

  Seething

  Spectra of Disorder for Various Fields.

  As an example of the disorderliness spectrum in mathematics, let’s look at some different kinds of mathematical functions, where a function is a rule or a method that takes input numbers and gives back other numbers as output. If f is a function then for each input number x, the function f assigns an output number f(x). A function f is often drawn as a graph of the equation y = f(x), with the graph appearing as a line or curve on a pair of x and y axes.

  The most orderly kind of mathematical function is a constant function, such as an f for which f(x) is always two. The graph of such a function is nothing but a horizontal line.

  At the next level of disorder, we might look at a function f for which f(x) varies periodically with the value of x. The sine function sin(x) is an example of such a function; it fluctuates up and down like a wave.

  Detail of a gnarly quintic Mandelbrot set.

  The gnarly zone of mathematics is chaos. Chaotic functions have finitely complicated definitions, but somewhat unpredictable patterns. A chaotic function may be an extremely irregular curve, unpredictably swooping up and back down.

  A truly random mathematical function is a smeared out mess that has no underlying rhyme or reason to it. A typical random function has a graph that breaks into a cloud of dots, with the curve continually jumping to new points.

  Formally, something is truly random if it admits to no finite definition at all. It is an old question in the philosophy of science whether anything in the universe truly is random in this sense of being infinitely complicated. It may be the whole universe itself is simply a chaotic system whose finite underlying explanation happens to lie beyond our ability to understand.

  Before going on to talk about the disorder spectrums of the Matter, Pattern, and Flow rows in Table 1, let’s pause to zoom in on the appearance of the Math row’s disorderliness spectrum within the gnarly zone of chaos. This zoom is shown in Table 2.

  Less Disorder

  More Disorder

  Critical

  High Disorder

  Chaos

  Quasiperiodic

  Attractor

  Complex

  Pseudorandom

  Spectrum of Disorder for Chaos.

  The most orderly kind of chaos is “quasiperiodic,” or nearly periodic. Something like this might be a periodic function that has a slight, unpredictable drift. Next comes the “attractor” zone in which chaotic systems generate easily visible structures. Next comes a “critical” zone of transition that is the domain of complexity, and which is the true home of the gnarl. And at the high end of disorder is “pseudorandom” chaotic systems, whose output is empirically indistinguishable from true randomness—unless you happen to be told the algorithm which is generating the chaos.

  Now let’s get back to the other three rows from Table 1, back to Matter, Pattern, and Flow.

  In classical (pre-quantum) physics, a vacuum is the simplest, most orderly kind of matter: nothing is going on. A crystalline solid is orderly in a predictable, periodic way. In a liquid the particles are still loosely linked together, but in a gas, the particles break free and bounce around in a seemingly random way. I should point out that in classical physics, the trajectories of a gas’s particles can in principle be predicted from their starting positions—much like the bouncing balls of an idealized billiard table—so a classical gas is really a pseudorandom chaotic system rather than a truly random system. Here, again, chaotic means “very complicated but having a finite underlying algorithm.”

  In any case, the gnarly, complex zone of matter would be identified with the liquid phase, rather than the pseudorandom or perhaps truly random gas phase. The critical point where a heated liquid turns into steam would be a zone of particular gnarliness and interest.

  In terms of patterns, the most orderly kind of pattern is a blank one, with the next step up being something like a checkerboard. Fractals are famous for being patterns that are regular yet irregular. The most simply defined fractals are complex and chaotic patterns that are obtained by carrying out many iterations of some simple formula. The most disorderly kind of pattern is a random dusting of pixels, such as is sometimes used in the random dither effects that are used to create color shadings and gray-scale textures. Fractals exemplify gnarl in a very clear form.

  The flow of water is a rich source of examples of degrees of disorder. The most orderly state of water is, of course, for it to be standing still. If one lets water run rather slowly down a channel, the water moves smoothly, with perhaps a regular pattern of ripples in it. As more water is put into a channel, eddies and whirlpools appear—this is what is known as turbulence. If a massive amount of water is poured down
a steep channel, smaller and smaller eddies cascade off the larger ones, ultimately leading to an essentially random state in which the water is seething. Here the gnarly region is where the flow has begun to break up into eddies with a few smaller eddies, without yet having turned into random churning.

  In every case, the gnarly zone is to be found somewhere at the transition between order and disorder. Simply looking around at the world makes it seem reasonable to believe that this is the level of orderliness to be expected from living things. Living things are orderly but not too orderly; chaotic but not too chaotic. Life is gnarly, and A-Life should be gnarly too.

  Sex

  When I say that life includes gnarl, sex, and death, I am using the flashy word “sex” to stand for four distinct things:

  Having a body that is grown from genes

  Reproduction

  Mating

  Random genetic changes.

  Let’s discuss these four sex topics one at a time.

  Genomes and Phenomes

  The first sex topic is genes as seeds for growing the body.

  All known life forms have a genetic basis. That is, all living things can be grown from eggs or seeds. In living things, the genes are squiggles of DNA molecules that somehow contain a kind of program for constructing the living organism’s entire body. In addition, the genes also contain instructions that determine much of the organism’s repertoire of behavior.

  A single complete set of genes is known as a genome, and an organism’s body with its behavior is known as the organism’s phenome. What a creature looks like and acts like is its phenome; it’s the part of the creatures that shows. (The word “phenome” comes from the Greek word for “to show;” think of the word “phenomenon.”)

  Modern researches into the genetic basis of life have established that each living creature starts with a genome. The genome acts as a set of instructions that are used to grow the creature’s phenome.

 

‹ Prev