Lectures 5&6

Flocks, Herds, Swarms & Schools: Distributed Models of Behaviour

1. Flocking Behaviour

References:


Reynolds, C. "Flocks, Herds and Schools: A Distributed Behavioural Model"
Comp. Graph. Vol 21, No. 4 July 1987, (SIGGRAPH 87) p25-34.

Tu, X., Terzopoulos, D. "Artificial Fishes: Physics, Locomotion, Perception, Behaviour"
Comp. Graph. Proc. 1994, (SIGGRAPH 94) p43-50.

flock A swarm of virtual blue flies.




Characteristics of flocking behaviour




Some Flocking Models


Girard, Eurythmy
SIGGRAPH 85

  • Force-field model: an early model (seen in 'Eurythmy', Michael Girard, SIGGRAPH 85) operated by constructing bound force-fields around each static or mobile object. Paths are calculated incrementally through these dynamic force fields.

  • Follow the leader: one flock member is designated the leader. The remainder adjust their velocity (magnitude and heading) to match / chase the leader. Due to different masses and turning ability of the flock members, the flock members have a slight variation in their flight paths.

  • Central force model: flock members are drawn along by a force towards some moving point.




A Distributed Flocking Model

Craig Reynolds presented the first distributed behavioural model of flocking behaviour in which:

  • Each boid follows its own set of behavioural rules
    (These are applied according to a bird's individual point of view, hence...)

  • A boid can perceive only its immediate neighbours

  • A boid is modelled visually as an oriented particle

A Boid's Behavioural Rules

In order of priority...


Craig Reynolds' website on the original boids.


Adding Interesting Behaviours

geese flocking
  • Migratory urge toward some point

  • Steer to avoid static obstacle collisions

  • Steer to avoid moving obstacles

  • Eating food

  • Mating

  • Wandering

  • Escaping



Real birds are believed to anticipate the movement of a wave being propagated through the flock. This anticipation of the wave of turning birds allows accelerated response to the flock's changing behaviour. The above model does not account for such long-range perception.

What is an example of an activity you perform in which you anticipate the motion of a wave of behaviour? (Hint: red; amber; green)


Applications


Reynolds,
Stanley and Stella in Breaking the Ice, 1987

  • Schools of fish

  • Herds of cattle

  • Flocks of birds

  • Swarms of insects

  • Droplets of viscous fluid, traffic on a road...


Super-boids, Further Extensions to the Model




The Internal Workings of an Artificial Fish

fish workings

After Tu & Terzopoulos, SIGGRAPH 1994

Tu & Terzopoulos, SIGGRAPH 1994



Schooling Behaviour Routine

fish behaviour routine
 

Tu & Terzopoulos, SIGGRAPH 1994



The External Workings of an Artificial Fishy

One fish two fish, red fish, blue fish...

Physical model of the fish muscular & skeletal framework.

fish model

fish visual cone ...this one has a little star.



Algorithmic Considerations

We would like to implement the algorithm so that it was independent of the number of boids in the flock.




2. Swarm Intelligence

References:

Millonas M. "Swarms, Phase Transitions and Collective Intelligence"
Artificial Life III, (ed) Langton, Addison-Wesley, 1994, p417-445.

Deneubourg, J-L. et al "Swarm-Made Architectures"
Towards a Practice of Autonomous Systems, Proc. of the First European
Conf. on A. Life. (eds) Varela & Bourgine, MIT Press, 1992.

Hofstadter, D.R. "Ant Fugue",
in "Godel, Escher, Bach: An Eternal Golden Braid", Penguin Books, 1980, p311-336.



Swarm

The idea of swarm intelligence arose largely from observation of the complex behaviour exhibited by the social insects (ie. bees, ants, wasps, termites).


 
 

A termite mound pinched from
somebody's happy-snaps for
your education.

A honey-comb pinched from
somebody's happy-snaps for
your education.

A wasp nest pinched from
somebody's happy-snaps for
your education.


Some complex behaviours exhibited by social insects include:




A swarm is a set of mobile agents which may:



In biological swarms the agents are:




Global Behaviour from Local Rules



Some Experimental Trail-Following Results

For discussion...



Describing a Swarm Member's Behaviour

Sequential algorithms

Stigmergic algorithms



Implementing the Model



Some simple actions...

Examples of behaviours which may be implemented using these (or similar) actions...




Implementing a Nest-Building Algorithm

(from Deneubourg et al., Alife I, Europe)


The Sequential Algorithm

The Stigmergic Algorithm

Local
Configurations:

config1 config1 config1 0

Sequential
Algorithm:

0 If S=H
1 If S=V
0 If S=H
1 If S=V
0 If S=H
1 If S=V
0

Stigmergic
Algorithm:

Pv Ph1 Ph2 0

 

Wasp nest flowchart

Wasp nest reconstruction
  • a. Solitary insect (N=1), seq. algorithm, Pvh=0.2, Phv=0.8

  • b. Solitary insect (N=1), sti. algorithm, Pv=0.8, Ph1=0.2, Ph2=0.4

  • c. Same as a. but with N=10

  • d. Same as b. but with N=10

Some real wasps' nests of different species.

Wasp nest construction

Animation Applications



lecture notes | home

All material accessed from www.cs(se).monash.edu.au/~cema is
© Copyright 1994-2008 Alan Dorin, Jon McCormack & Monash University except where noted.