Remko Scha

About Algorithmic Art

We are concerned with autonomous algorithms that
produce visual art (or, perhaps equivalently, algorithms that
themselves may be viewed as (meta-) artworks). We are not
concerned with software-tools that facilitate the production of
artworks by human artists.

Most image generation algorithms do not specify one image, but
a large (often infinite) class of images. Algorithmic art is "meta-art".
Other, pre-computational approaches to meta-art constitute the
art-historical context of algorithmic art:
kinetic art, conceptual art,
interactive art, process
art, drawing
machines. In the case of algorithmic art, the class of possible
outcomes is specified in mathematical terms; other forms of meta-art
tend to involve human persons or other real-world processes.

Art-generation algorithms can be applied to various
modalities: images, animations, sculpture, architecture, music,
text, even facial expression and other forms of body-art. They
can be meant to be observed live in a discotheque or on the internet,
or to produce static output for art-collectors and traditional
museums. The focus of this page is image generation  but
the mathematical concepts and computational methods that we encounter
may very well be applicable in other domains.

Algorithms

An algorithm is a sequence of formal (mechanical)
rules operating on symbolic representations (codes).

In ancient Greece and India, systems of rules were used to ensure
objectivity and precision: Euclid's Elements, Aristotle's
syllogisms, Panini's grammar of Sanskrit.

The mechanization of rule systems was pioneered in the 14th century
A.D., when Ramon Llull proposed mechanical procedures for generating
new propositions from first principles. A few centuries later,
Gottfried Wilhelm von Leibniz invented symbolic logic by eliminating
the theological content from Llull's machinery.

The first fully specified design for a "general purpose computer",
running algorithms in today's precise sense of that word, was
Alan Turing's "Universal Computing Machine".

Mathematical Images

Any image-generation algorithm must be based on
some formal conception of what an image is -- it must be inscribed
within a mathematical definition of the set of all possible images.

Shapes. Mainstream
mathematics assumes a reductionist ontology about geometry: it
treats lines and planes as sets of points  where a
point is a position in a given n-dimensional space. A point may
thus be represented as an n-tuple of numbers: the Cartesian coordinates
which specify its position. A point in a two-dimensional plane
is thus described by a pair, consisting of its x-coordinate and
its y-coordinate.

RGB cube

Hue-Saturation-Brightness
cone

Colors. In black & white graphics,
color is a boolean: black/white. The scale of grey-tones is a
one-dimensional continuum (for instance: the segment of the real
numbers between 0 and 1). The space of all colors is a three-dimensional
continuum. One can make different choices about which dimensions
to use. E.g.: RGB, CYM, HSB.

An image is thus
a mapping from pairs of real numbers (in a given interval) to
colors (e.g., booleans, real numbers, or triples of real numbers).

Computational Images

The mathematical point of view does not directly
translate into a practical convention for finite computational representations.
The mathematical correlate of a visible shape or line-segment is
a set of uncountably many points, and the coordinates of most of
these points are not integers, but irrational numbers, which cannot
be represented in a finite way.

In the design of image-generation algorithms,
the representations to be used can thus not be based directly on
mathematical first principles. No image-generation algorithm can
explore the space of all possible images, if we understand that
notion in its mathematical sense. Any algorithm must be based on
a definition of a space of finitely representable images; specifying
this definition is in some sense an arbitrary (in other words, artistic)
decision.

Different "schools" in algorithmic
art made different decisions about this. We present the most common
approaches on separate pages:

Grid-based algorithms, which work with
a two-dimensional array of cells  a discrete version
of the mathematical model, which makes the image representations
finite and computable. The grid therefore inherits a feel
of "objectivity" from the mathematical research
tradition.

Scatter-algorithms, which map bags of
objects onto positions on the plane.

Line-based algorithms. This includes turtle-graphics algorithms, which draw sequences
of straight line-segments in terms of a "local" coordinate-system, and movement
simulation algorithms, which draw lines according
to a continuous dynamics.

Visual Languages

Any
image generation algorithm is inscribed within some "visual
language": it assumes a set of formally possible images, and
this assumption largely determines the style of the piece. Different
techniques may be used to define visual languages:

Schemas.
The early algorithmic pieces of the 1960's were usually
based on one simple, fixed structure, with a small number
of variable parameters.

Grammars.
To define visual languages which allow images with arbitrarily
deep hierarchical structures, one may draw inspiration from
the context-free and context-sensitive rewrite systems of
early Chomskyan linguistics.

Algebras.
The most general approach is to use a mathematical image
description language which encompasses complex image-generation
and image-transformation operations.

Algorithmic approaches

Any image generation algorithm explores a space
of possible images. It may do this in many different ways.

Complete
enumeration.

Random
sampling. If the space of possibilities is very large,
this is the only way to give an unbiased impression of what
it contains.

Optimization.
The algorithm may be trying to find the "best"
image according to certain criteria (e.g. a formalization
of "beauty", or statistics about people's appreciation).
To explore the space effectively, a heuristic search strategy
must be employed. Artificial evolution by means of genetic
algorithms. is popular for this purpose.

Interactivity. The spectator may be allowed to explore
the possibilities on her own accord. The algorithm is an
interface.

Emergence. The algorithm carries
out sequences of local transformations on an arbitrary initial
image. Global patterns emerge because of unforeseen interactions
between the local processes. Algorithms of this sort (e.g.
cellular automata)
are often inspired by natural processes (Artificial Life).

Data-visualisation. Images may
be constructed by mapping data from a different (non-visual)
domain.

The esthetics of algorithmic art.

The classical painting is a material
object, dense with properties that cannot be explicitly articulated
and which are nonetheless essential for the identity of the work.
(Cf. Nelson Goodman: Languages of Art.) Algorithmic art
is different: an algorithm is an explicit, discursively articulated
schema. It does not create the concrete materiality of its output  it merely specifies some of its properties, at a more abstract
level. In that sense, algorithmic art is conceptual art.

Most image generation algorithms do not specify one image, but
a large (often infinite) class of images; algorithmic art is "meta-art".
Obviously, the esthetic goals of meta-art differ substantially
from those of subjective expression-oriented art. The esthetics
of meta-art is not a new invention, however. It can be traced
back to the art of Marcel Duchamp and the philosophy of Immanuel
Kant. (Cf: Remko Scha: Kant, Duchamp,
Meta-art.)

In the context of the New Media,
algorithmic art can be viewed in two different ways. It borders
on highbrow visual art as well as on interactive media technology:
if we parameterize an art generation algorithm and allow the human
spectator to turn the knobs, we have built a new "medium"
that people may find fun, interesting or useful. Our perspective
on algorithmic art may thus be determined by the "reflection
esthetics" of modern art, or by the "involvement esthetics" of computer games and paint programs. We will mostly adapt the
first point of view, although the the second one may ultimately
be more important.