you pretty little flocker


You Pretty Little Flocker is part of a larger project that explores the application of ecosystemic process in electronic media arts. An ecosystem is an ecological concept that is used to describe the complex networks of relations between living organisms (humans, ants, fish, birds etc) and the abiotic environment (sun, water, soil etc). Ecosystemic processes such as the transformation of energy and matter, competition, symbiosis and evolution underpin the aesthetic and dynamic beauty of the natural world and offer rich inspiration both conceptually and technically for the development of generative and interactive digital art.

Biologically-inspired Artificial life models have long been popular in the generative arts, in part because visual representations of their bottom-up, self-organising dynamics attributions of intentionality: their behaviour seems almost purposeful, hinting at autonomy.

You Pretty Little Flocker examines two issues in the use of such models as methods for algorithmic arts. The first relates to issues of control. When playing with such models, it often becomes apparent that the emergent dynamics inhabit only a fraction of the entire state space of the model and that other areas may offer aesthetically valuable behaviours. As the self-organising or emergent nature of such systems are a major part of their appeal, it feels inappropriate to impose top-down controls to force the system into unexplored terrain. The first aim in this study was to explore a method of expanding the space of generated forms by extending the core algorithm in such way that the system could be cajoled, or steered through these new areas. How can we expand the state space of a given model and provide a means to steer the system around this space?

The second addresses the impact of visualisation method on the way models are perceived. Alife arts is inevitably heavily influenced by Alife science, where the task of visualisations is to render an otherwise abstract formal system visible and to reveal system dynamics as clearly as possible. However there are as many ways to visualise a model as to skin a proverbial Felis silvestris catus. To what extent is the aesthetic appeal due to particular visualisation methods as opposed to inhernet system dynamics?

fullFlock fullFlock fullFlock

[click image for hi res version]

You Pretty Little Flocker is based on Craig Reynolds' now classic flocking algorithm, boids (Reynolds, 1987). The model demonstrates very neatly how complex coherent group dynamics can arise out of the interaction of many individuals, without the need for top-down control.

Three simple update rules determine the speed and direction of each individual in the group according to the speed and direction of their near-neighbours.

  • separation: steer to avoid crowding local flockmates
  • alignment: steer towards the average heading of local flockmates
  • cohesion: steer to move toward the average position (center of mass) of local flockmates

The resultant dynamics are strongly reminiscent of the emergent behaviour of groups of insects, birds or fish that swarm, flock or school, even recreating phenomenon such as regrouping after being divided by an obstacle.

Steering Generative Systems

In the context of generative art, this life-like, autonomous behaviour is appealing in itself, but also raises issues of control. At a technical level, such generative algorithms vastly reduced development time in CGI motion picture (e.g. the algorithm was famously used in Tim Burton's 1992 Batman Returns to create swarms of bats and armies of penguins marching through the city).

At an artistic level, the emergent behaviour invites attribution of intentionality, creating an opportunity to examine new forms of man-machine interaction and control. For example Casey Reas, for example, uses similar swarm models a lot in his Process series to allow users to 'lead' the system around using attractants to coax the flocks along particular paths.

I am interested in how biologically inspired models can be adapted for use in the algorithmic arts to facilitate a similar 'steering' of the emergent behaviour at the algorithmic (rather than environmental) level. How can we augment such models to create new sets of behaviours?

The approach in this case was very simple. The basic flocking algorithm is modified to include size variation and discrimination. In the original model, each boid updates its travel vector according those of its near neighbours. I introduced a similarity threshold (kinDistance) which also takes into account the neighbours' similarity (size) to the current boid. This can be varied continuously such that boids are influenced by all individuals in the population, only affected by those of a similar size, or only those of an identical size.

The animation above shows a run where initially the whole population flocks together (as in the standard algorithm). At 10 seconds (when the background turns from grey to white), the kinDistance parameter is altered so that boids are influence only by those of a similar size: the single flock splits into many distinct sub-flocks. This parameter gives us a control which can steer the behaviour of the system whilst preserving its generative autonomy.

Alternative Visualisation Methods

I was also interested to see how the visualisation method influenced our perception of the system dynamics. Visualisation is such a core part of simulation and science in general and can strongly influence our conception of results. The algorithmic arts seems like an ideal platform for investigating the impact visualisation on the perception of the underlying data set or model.

Rather than visualising the particles as individuals in a swarm, the interactions between entities are rendered. This is of particular interest in an ecological setting as the relations between elements are in some cases of greater interest than the internal state of the interacting components.

As shown in the diagram above, each time two boids touch, a line is drawn between their centres, the hue determined by the distance between centres. Visually this retains a basic biological essence, but produces plant-like growth or floral structures rather than swarming patterns.

Implementation details

The images and animation on this page are created using the model and visualisation method described above. Three distinct flocks are placed on the canvas, each constrained within a fixed circular arena. Space is non-torroidal and each time an individual leaves the screen it is repositioned at its starting point. This creates sub-flocks of distinct sized boids that stream from fixed loci. The effect of the kinDistance threshold can be seen in the images above and below.

On the left, the whole population flocks together, on the right, the threshold is adjusted such that the population splits, creating two flocks heading in opposite directions. In the centre, the threshold is turned right down such that only those of an identical size flock together, spawning multiple subflocks which leave distinct visual traces.


Made at CEMA, Monash University, Melbourne and supported by Australian Research Council DP grant DP0772667.

© ecila. 2010