~ isle ex ~ HOME MAP NEW CONTACT

CA Music Background Information

First off, I should mention that Isle Ex is equipped with a Java applet, Cellsprings, which should serve as an useful adjunct to the following material. It's not music-enabled (yet), but it's great for exploring CAs.

Cellular Automata

A cellular automaton (CA) is made up of a number of simple subunits or cells. In the case of the CAs presented here on Isle Ex, the cells are arranged in a 2-dimensional array or matrix. A cell is really no more than a "slot" for a small number, often just a 1 or a 0. The automaton evolves through time by following a rule, which specifies the value a single cell is to take at the next step in time, as a function of its present value and the values of its immediate neighbors. The application of this rule to every cell in the CA yields the next state of the CA. Then that state is subject to the same process, and so on indefinitely, generating the fully deterministic series of states, or orbit of the initial state. Notice that the update rule uses strictly local information. Any orderly global behavior is "bottom-up", or emergent.

In the Isle Ex CA music examples, the successive states of an orbit are presented as a looping "state movie". The cell values in a given CA state are depicted by means of pixel colors in the corresponding bitmap frame. A consistent color map is used for the musical examples such that 0-cells are always dark blue, 1s are light green, 2s, if present, are magenta, and so on.

CA Universes

Here on Isle Ex, every cell in a given CA has the same number of neighbors, even the cells at the edges of the matrix, because the CA proper doesn't have edges, in the same sense that the earth's surface doesn't have edges even though a wall map of the earth does. In logical "space", the edges of the CA matrix "wrap around" to "connect" to their opposites (i.e., top to bottom and left to right), forming the surface of a doughnut-shaped volume, or torus.[1] Thus the CA universe, like the big one, is finite but unbounded.

Notably, in the foregoing respect the CAs depicted here differ from many of the CA realizations you may run into elsewhere on the Web, especially those of Conway's Life. On Isle Ex the CAs are complete, closed, self-contained systems, whereas elsewhere it is often the configuration of 1-valued cells or "pattern" that is seen as constituting the system, and such patterns are given whatever room, universe-wise, they need to "grow".[2]

CA Orbits

As already mentioned, a state's orbit is just the sequence of states that follows from it as the CA updates. A bit of thought will tell you that all closed-universe CA orbits must eventually end up locked in an ever-repeating series of states or cycle. The number of unique states in a cycle is called its period. (A cycle of period one, in which a state is its own successor, is often instead referred to as a steady state.)

Though all orbits end up in repetition, they may follow long lead-in trajectories. Any such initial non-repeating sequence, whether long or short, is called a transient.[3] A given cycle may have many transients leading into it, like streams flowing into a sea. And, also like streams, orbits may merge prior to reaching their ultimate destination, forming dendritic "drainage" patterns. (In dynamical systems parlance, the terminal cycles are attractors and the transients that "drain into" a particular attractor lie in its basin of attraction.)

This brings us to one crucial difference amongst the CA music examples. If an orbit's Type is listed as 'cycle', then the state sequence is a complete, endlessly cycling orbit. In contrast, the cycling of the 'partial transient' sequence is a contrivance - the sequence is "rewound" to the initial state at some well chosen point, whilst the CA itself would continue its merry way to some unglimpsed telos.

As for the Steps listed for an orbit, this is just the number of unique CA states in the sequence. In the case of cycles this value is also the cycle's period, since, as just indicated, every cycle is represented in its entirety.

Some orbits contain repetitive cell configurations we'll refer to generically here as oscillators.[4] An oscillator may be fixed with respect to the cell matrix, or may instead, upon completing its cycle, find itself displaced from its previous location in one of the eight CA directions. We'll use the term glider to denote any of the latter "moving" sort of oscillator.[5]

CA Musification

In the method I've developed, a CA orbit is transmuted into music by first computing at each step a scalar value that represents some property of the cell matrix. I've lately settled on referring to such measures as CA demographics, since they involve cell populations and their instantaneous dynamics. Application of our selected demographic function yields a sequence of values, which in turn are input to some well-chosen (we hope) musification map - and voila! the CA sings.

In the example tables, you'll notice an entry for a transmusical rendering's Steps. One might expect this to be redundant with the source orbit's Steps listing, and it usually is, but there are notable exceptions. For instance, since a glider's period of oscillation is usually shorter than the time it takes the glider to circumnavigate the universe, a cyclic orbit of the giddily gliderous Brain rule normally has a period that is some multiple of the period of the transmusic produced from it.

The Brain-driven "It's an Inexorable Life" suite (i.e., the set of three renderings corresponding to the second orbit listed for the rule) constitutes a special case. The input state sequence, which features a glider belonging to a class that I've since learned goes by the rather conflicted name of "butterfly gun"[6], is "linear", yet the output music is periodic. Interestingly, each of the three transmusical renderings has a different period - 1/10, 1/4, and 1/8 the length of the state sequence respectively.[7]

Caveats and Usage Tips

For music/audio media issues per se, please take a look at the pertinent section on the transmusic info page.

The 'GIF/MIDI' link for each transmusical rendering listed in the tables launches an HTML "player" in a separate browser window, in which the zoomed state movie is coupled with background MIDI. Needless to say, the two media are not properly synchronized. Though I intend to install a better presentation mechanism eventually, the current technique at least gets the idea across.[8] Here are a few tips to help make the best of it:

  • To get the two media to start at roughly the same time, you might try hitting the Restart/Apply button after the GIF and MIDI have both loaded completely. (In IE4 you'll probably have better luck with the browser's own "refresh" command.) However, even this rough synch will rapidly be lost in some browsers, due to inaccurate GIF timing. (In my tests under Win95, Netscape, sad to say, loses the synch almost immediately with most examples, while IE keeps it quite well.)
  • The "zoomed" (browser-scaled) GIF movie may be a bit processor-intensive for some systems, especially when you have other tasks going. If you have problems, you might try running the movies at actual size (100% zoom). This can be done either by using the drop-down list within the player, or by editing the URL to the player. To do the latter, copy the URL and add &z=1 at the end, unless there's already a z=[some number] somewhere after the question mark, in which case just change the number to 1.
  • Apparently IE3 is "dither-happy" when running in 256 color (8 bit) video mode, to drastic effect. Fortunately, Netscape 3-4 and IE4 don't have this problem (in my tests on the Win95 platform, at least). What happens is that some cells with the same value are differently colored in the zoomed GIF image. Moreover, the dithering pattern changes from frame to frame in peculiar ways that are sensitive to cell features, creating, in effect, an artifactual CA superimposed on the legit one. Mind you, even with IE3 this is just an 8 bit thing - if you run your video system in HiColor or TrueColor mode (16 or 24 bit), it goes away.
The "new improved" CA music installation provides supplementary 'MIDI' links, which are included for two main reasons: (1) they make saving the MIDI files more convenient, and (2) they provide an alternative for those visitors whose browser configurations don't handle the background music in the 'GIF/MIDI' presentations correctly. In conjunction with this enhancement, I changed some of the MIDI files so that now every unimap rendering is repeated[9] internally to the file. This is meant to preserve some sense of the natural looping of the system for the MIDI-only links, which, as standard links, can't include player commands.

Lastly, I've recently come to realize there is a small inaccuracy in some of the presentations. While I haven't surveyed them all, I believe most of the orbits whose renderings utilize the delta count should start one state later in the sequence to match perfectly with the music. It would be a pain to fix the GIFs at this point and I can't really justify the effort, seeing as how they don't synch well with the music anyway. The known exceptions to this error are the Cyclic CA examples. Two of the orbits are new to the site, and I redid the old movie when I made the new ones, so all three should be correct.


Notes
  1. Now that I think about it, it would have to be a very curious doughnut in order to meet the requirement that the inside and outside radii be the same length (for, all "lines of latitude" in the CA - i.e., rows of cells - are the same length). This is like having a circular racetrack whose inside lane is the same length as its outside lane. That would seem to call for a track of zero width, or, in our case, a doughnut of zero volume. Hmmm. Well, maybe that's not so unusual...I'd say that the doughnuts, or rather "donuts", offered in the local dunking bars are closely approaching that state - or a state of infinite price, which amounts to the same thing.)
  2. Universe closure brings with it the intriguing issue of how a CA's size might affect its state-transition diagram, whether we're looking at it from just a "number of moving parts" standpoint, or examining other size properties to which some rules are sensitive (e.g., numerical properties of the width, relationship between height and width). The former, more fundamental, interest might lead to an inquiry into the smallest universe that supports a given property, perhaps as part of a general investigation into the minimum requirements for "complexity". At any rate, here on Isle Ex, as you may have noticed, we are rather fond of small universes, and diligently tend them the way others might their bonsai or Chihuahuas. [Update: I've recently found an excellent online reference that speaks to the issue of universe size and its influence on the "shapes" of state-transition diagrams. This is Stephen Wolfram's landmark "Tables of Cellular Automaton Properties", specifically tables 13 and 14. While Wolfram's survey was carried out for simple 1D CAs, its general concepts transfer easily to the 2D case. And, BTW, if anyone out there knows of an online source for CA state-transition diagrams, such as those in Table 13, and/or for software designed to traverse orbits and generate such maps, I'd like to hear about it.]
  3. An interesting question is, how do you tell an intractably (as in, impractical to compute) long cycle from a transient? But that's another story.
  4. The ontological status of dynamic cell patterns is a tricky issue. For a quick introduction to the concepts involved, I recommend the off-site Java-activated essay, Exploring Emergence.
  5. While the term 'glider' has a more specific application among Conway's Life aficionados who have developed their own elaborate taxonomy of cell structures, its generic usage is common in wider CA studies.
  6. Such oxymoronic weapons may be the wave of the future in a society that demands ever more ingenuity in its would-be revolutionaries. (The first tactic of the new revolt being to muddle the distinction between friends and enemies :) Be that as it may, when playing at transmusical speeds the "butterflies" reminded me more of crawling baby bugs, with the "gun" playing the role of the unnervingly insistent mother, and I'm inclined to stick with that ever-so-fertile metaphor.
  7. If you are bothered by the fact that the state-sequence is looped, note that I could have chosen a couple of other rewind-points and got the very same music. The sequence would have to be a minimum of 80 steps in order to be evenly divisible by each of the musical periods, but there is no upper bound other than that enforced by the limited size of the universe. (The leading bugs eventually wrap around far enough to engage their mother in mutual annihilation, and the music flatlines to the endless and forlorn crawling of the remaining orphans. In an open universe, of course, there would be no apocalyptic crackup, and the brood would grow and the music loop in perpetuity.)
    Of course, I don't mean to imply that the periodicity of the music is some great mystery. There's an obvious underlying oscillation, with a "trend" of ever-increasing numbers of bugs superimposed upon it. Still, to my mind the music (i.e., the three renderings taken together) brings out the CA's structure in a very intriguing way.
  8. The GIF/MIDI kludge is one bad compromise among many possible bad compromises, given the current state of "multimedia" on the Web. At the time I put together the site it seemed to be the most expedient use of the materials I had at hand (as generated by "Flea Circus" aka "MiniCAM", a DOS software package I've worked on sporadically since '92 but never got around to finishing). I've toyed with the idea of adding a video format to the examples, which would accomplish synchronization, but that solution would burden the visitor with someone's overly buggy, overly proprietary plug-in, and would require yours truly to shell out for someone's overpriced authoring tool. So, in all likelihood, I'll eschew further adventures with dead, stuffed, wall-mounted media, opting instead to wait till JavaSound is available to do the job right - i.e., with realtime, parameter-accessible system evolution and rendering.
  9. To be exact, each file contains four successive occurrences of the minimal rendering. (There's nothing mystical about the number four; anything less seemed too brief for some renderings, and a consistent number was used for the sake of clarity.)

Page contents created 4-Feb-1998.  See map for file modification date.