Biologically Inspired Computation. Lecture 5: Introducing Swarm Intelligence contents: the behavior of natural swarms and flocks -- Reynold’s rules and swarm simulation. Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at :.
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Lecture 5: Introducing Swarm Intelligence
contents: the behavior of natural swarms and flocks -- Reynold’s rules and swarm simulation.
Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at :
There are some interesting things that come to mind when we
think of swarms (flocks, schools, etc …):
How on earth can these things happen?
HERE IS A LIVE EXAMPLE
If you are empty-handed and encounter a disc, pick it up
If you are carrying a disc and encounter another of the same colour,
put yours down.
Emergent order arises from simple local rules.
But we’re mainly interested in animals and insects
with the concave part forward:
This is thought to help channel
their prey to the “focus”, and
stop them from escapingWhy does flocking/swarming occur so much in nature?
Energy savings: Geese in V formation have around a 70% greater
range than in flying individually. Individuals can fly around 25%
Frightening and confusing predators; avoiding being “picked off”
If we can assume that:
Then: basic statistics can show that the error in the flocks direction is probably very small. About 1/sqrt(n) of the typical error of one of the n individuals.
Flocking occurs so much because it is clearly useful. But how do they do it so well? Individual ants are not clever enough to understand the benefits.
It comes down to: simple behaviours of individuals in a group can have useful emergent properties. A theme we will continue to see a lot …
A recommends to B, B recommends to C, …
Robert Axelrod has a well-known theory, “Axelrod’s Culture Model”,
which explains how ideas spread in societies. Kennedy and Eberhart
(a computer scientist and a social scientist respectively) altered this
into the “Adaptive Culture Model”, which works like this:
If you think your neighbour is good, then be more like them.
And that’s basically it. But notice the important words,
neighbour: you change yourself under the influence of people nearby
good: in some way your neighbour is more optimal than you,
otherwise why be like them?
more like: this is vague, so you have freedom in how you change
This is actually a very good model for how culture and ideas
spread quickly in societies. Everything from rumours to eating
habits. I only hope this works with `green’ behaviour …
Back to computer science … evolution of ideas as they get passed on and changed in social networks.
From the CS viewpoint, the question is:
How does this kind of, apparently organised, group behaviour
emerge, without a central controller? Without (like we have)
something like a brain in control of everything?
The emergent behaviour that we see arises purely as a result of
individuals in the swarm processing information in their (fairly)
So, studying this in nature suggests how we can get co-ordinated
behaviour from a group of individuals, without having to specify
any overall controller. This is very useful, for example, for designing
computer networks. If one main machine was in control of the network,
and that machine crashed, …
But so far that has not been a main success area for swarm
Two main things that come from swarm inspiration: evolution of ideas as they get passed on and changed in social networks.
Ants seem to find the shortest path to find food that may be
quite distant from their nest. They do this via “stigmergy” –
laying pheronomones on their path as they move. This has
directly inspired the design of a very successful optimisation
method, called Ant Colony Optimisation.
Meanwhile, the adaptive culture model has led to a different,
and also very successful, new optimisation algorithm, called
Particle Swarm Optimisation
Simulations of natural flocks.
For the entertainment and gaming industries, for example.
Craig Reynolds is a computer graphics researcher, who revolutionised animation in games and movies with his classic paper :
Reynolds, C. W. (1987) Flocks, Herds, and Schools: A Distributed Behavioral Model, in Computer Graphics, 21(4) (SIGGRAPH '87 Conference Proceedings) pages 25-34.
This paper is examinable reading, available on my teaching page.
We would like these to move like a realistic flock of starlings.
(The heading of each one is suggested by where it’s pointing)
But what’s wrong to start with?
That’s better. Now what? Perhaps in the next timestep, they
should all move the same small distance? They should all change
their velocity in some way? What?
Reynolds came up with three simple rules that solve this
Problem, resulting in entirely realistic flocking behaviour.
To explain them, we first need to consider the perceptual system of
an individual (which Reynolds called a boid).
For realistic movement, you need a realistic view of perception.
E.g. a starling’s movement is not influenced at all by the flockmates
that it cannot see – such as those out of its line of sight, or too far
This picture is from Reynold’s boids page.
The green boid can see a certain amount
ahead, and is also aware of any
flockmates within limits on
either side (recall, birds tend
to have eithers on the sides
of their heads.)
Two parameters, angle and distance,
define the system. SO, this boid will only
be influenced by those others it can sense
according to these parameters.
At each iteration, a boid
makes an adjustment to its
velocity according to the
Avoid getting too close to
local (the ones it is aware of) flockmates.
At each iteration, a boid
makes an adjustment to match its velocity to the average of that of its local flockmates.
At each iteration, a boid
makes an adjustment to its velocity towards the centroid of its flockmates.
Need to define an appropriate distance for the perceptive range.
What if this is too high, what if this is too small?
Reynold’s found that he had to be careful about how the vectors from the three rules get combined. It is not ideal to simply add them. Opposing “shouts” from two rules may cancel out, leading to
the third winning – in what scenarios might this be a problem?
Note that the cohesion rule is interesting – it leads to “bifurcating” around obstacles – a follow-the-leader approach to flocking would not achieve that.
The simple rules also realistically lead to “flash expansion” if started too close together.
Next time: evolution of ideas as they get passed on and changed in social networks.
Ant Colony Optimization