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.
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.
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]
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]
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]
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
-
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.)
-
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.]
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
-
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.
|