Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

22
Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    230
  • download

    0

Transcript of Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Page 1: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Bioinspired ComputingLecture 3

Collective Behaviour andSwarm Intelligence

Page 2: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Overview…This Time:• command & control vs.

self-organisation• the sophisticated abilities

of insect colonies• stigmergy• algorithms inspired by

insect intelligence– Foraging– Clustering & Sorting– Building– Swarming & Flocking

Next Time:• insect-like social robots

– sorting & clustering– cooperative transport

• Applications– sport– education– entertainment

Page 3: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Amazonian Categorisation• Imagine you are faced with the task of organising a huge number of Amazonian species. There are hundreds of ways in which these species might be divided up: colour, size, etc.• Your boss tells you that your categorisation will have to match that of his customers over a very long time scale, so it must be flexible, because not only will customers change, but species may also change (colour, size, prevalence, etc.).• One approach to this knowledge management problem is to interview customers, devise a general-purpose, explicit categorisation scheme, pay someone to keep it up to date, and hope customers and species change little and slowly.• amazon.com solve an analogous problem like this:“Customers who bought this book, also bought…”

Page 4: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Collective problem−solving• "Problem−solving can occur at a level

above a collection of idealized agents, without "intentional solving" on the part of the individual.”

– N.L. Johnson, Collective Problem Solving, LANL tech−report, 1998.

• In other words, the individual agents do not know they are solving a problem, but their collective interaction so solves the problem.

• Emergent functionality

Page 5: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Amazonian Self-OrganisationWhy is this automatic categorisation approach successful?

• no need to interview customers• no need to discover explicit categories before using them• adapts to changing trends automatically as they happen

In contrast, “command and control” approaches suffer from the problem that explicit, hand-designed categorisations…• may be hard to discover through customer interrogation• will require constant updating and may still be out of date• may sometimes require a radical overhaul

In the next few lectures, we will learn that simple, self-organising systems such as amazon.com’s often enjoy advantages over their command and control cousins…

Page 6: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

AdvantagesThese systems tend to involve many partially independent entities working together to solve a problem without a central executive. Each entity may be unaware of many or all of its colleagues, attending to only its local environment.

Such systems are:• parallel systems of simple

agents• robust to noise & damage• dynamic• flexible• self-organising

• adaptive• possibly complex• hard to build?• hard to understand?• fast, cheap, out of control?• intelligent?

Page 7: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Ants, Termites, Bees, etc.Some of the most impressive natural self-organising systems are to be found in the world of colonial insects…

…with no central planning and very little communication – complicated, coordinated, goal-directed behaviour often seems to arise spontaneously from the interactions of many simple insects.

Such species…• forage for food, dividing colonial resources effectively • construct complex hives, nests, etc.• efficiently & dynamically divide labour amongst the colony• sort and cluster different objects (eggs, corpses, etc.)• cooperate in moving objects, defeating enemies, etc. that

would be impossible for a single individual to deal with

Page 8: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

E.g.

Page 9: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Ant Algorithms and Bee BotsRecently software engineers and roboticists have begun to exploit our understanding of social insect behaviour to design new kinds of algorithm and new kinds of robot.

• These systems idealise insect behaviour in much the same way that ANNs idealise the behaviour of neurons (topic 3)• Researchers pick and choose aspects of natural systems in the hope that the artificial systems they inspire will share some of their desirable properties.• Of course, ants and bees are not designed to solve the problems of today’s software engineers or roboticists.• A piece of software or a robot will not perform well just because it behaves like an ant colony – the trick is to find aspects of insect behaviour which can be profitably exploited.

Page 10: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Foraging for the Shortest RouteA particularly striking result from ant experimentation concerns the ability of a colony to discover the shortest routes to the resources it requires:

• One pheromone trail is now stronger than the other, directing the ants to the food via the shorter route.

nest

food

As ants forage they deposit a trail of slowly evaporating pheromone.

Those that reach the food first return before the others.

• It is not just ants that need to find optimal pathways.• Traffic on telecommunications systems, the internet, roads, rail, and sea would all benefit from the reduction in congestion that efficient routing algorithms could provide.

Page 11: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Ant-Inspired RoutingConsider an in-car system that suggests the best route to take for any journey from A to B across a road network.

In this way, routes via congested nodes are gradually weakened, prompting ants to take alternative paths.

An “ant” traverses the network following the strongest pheromone trails from A to B.At the end of the journey the ant lays down pheromone along the path taken, leaving less pheromone at nodes that were congested.

Since many ants traverse the network constantly and their pheromone evaporates gradually, the system automatically adapts to the current load on the road network.

A

B

Page 12: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

How Good Is It?• In their book Swarm Intelligence, Eric Bonabeau, Marco Dorigo & Guy Théraulaz claim that “work on ant-based routing is only beginning … but in all tested situations it appears that … ant-based routing with agents patrolling the network outperforms all other routing algorithms”.• France Télécom and BT are developing algorithms for their systems, but the application of ant-based routing is potentially much wider – e.g., routing internet traffic.

• Like amazon.com, these algorithms rely on constant user traffic to build an up-to-date picture of what is going on (whether it be trends in book shopping, jams on the Otley Road, or congestion at telecom hubs). The power of these algorithms is their simplicity and their ability to direct traffic and build this picture simultaneously.

Page 13: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Sorting, Clustering & BuildingMany species of ant cluster corpses into cemeteries, gradually piling them up together. Brood sorting is also observed, with larger larvae lying further from the brood centre. In addition, some species are able to construct walls, arches and other architectural structures.

These behaviours are yet to be fully understood, but have all been modelled as the result of simple probabilistic rules:

• Clustering relies on two rules concerning the ant’s local environment: (i) items are more likely to be picked up when they

differ from those around them, and (ii) items are more likely to be put down amongst

similar items.• Wall building, etc., is slightly more complex, relying on

chemical templates to direct what are essentially the same basic processes.

Page 14: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Ants for Catering Imagine you’re want to seat many guests. It’s best if you group guests that know each other together. But how?• First draw a graph that represents which of your guests know each other. Then apply an algorithm inspired by ant clustering: scatter the nodes of the graph and a load of ants on a page; let an ant pick up a node, i, if it is surrounded by nodes to which i is not connected; let an ant drop i if it is surrounded by graph neighbours of i; let the ants wander about at random picking up and dropping nodes.

Slowly, clusters of acquainted guests will form on the page.

This graph-partitioning technique has applications in chip design (where connected components must be placed close together on a chip) and load balancing on parallel processor machines.

Page 15: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Partitioning a Graph Here we see a random graph being partitioned by ants…

After the ant algorithm of Kuntz, Layzell & Snyers (1997) has been at work, a few clear clusters have emerged.Cluster members are more connected to each other than to members of other clusters.

This technique can be used to efficiently load the processors of a parallel machine – minimising the amount of communication required.

Page 16: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Ants for Architecture How can insects in a colony coordinate their behaviour in order to build highly complex architectures? Ants and termites don’t appear to have blueprints in their heads: they seem to follow simple rules in an almost random manner.

If the blueprint isn’t in the insects’ heads, it may be in their environment: ants appear to use their own previous work to stimulate their behaviour – the building of arches, towers, etc., appears to be governed by the structures themselves.

“The worker does not direct his work, but is guided by it”

Page 17: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

StigmergyStigmergy is a slippery concept. At its root is the ability of agents to influence each other and their future selves by altering their environment – often seemingly unknowingly.

Some examples:• pedestrians crossing a park make paths in the grass – the

most popular will guide future walkers and be reinforced• amazon.com customers buy books – their purchases change

the descriptions of the books, guiding future customers• cells divide & differentiate during morphogenesis

according to chemical gradients that they themselves influenceIn these examples, the behaviour of individual walkers,

shoppers, cells, etc., is shaped by their environment, which in turn was shaped by their own prior activity.

Page 18: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

?

Artificial ArchitectsBonabeau and Théraulaz have demonstrated these ideas in action through simple artificial paper wasp architects.

Wasps wander at random over a 3-d grid of cells and follow a simple set of microrules that govern building behaviour.Depending on the contents of the 26 cells that surround the wasp, it can deposit one of two types of brick, or leave the cell alone – thus wasps are reactive agents with no memory.

B&T show that starting from a single brick, swarms of these wasps following simple sets of microrules can construct complex structures that resemble natural paper wasp nests – layered, cellular combs with internal cavities and a surrounding envelope.

Could sets of these microrules be evolved to build human habitation or useful artefacts?

- cf work on urban planning by Georg Vrachliotis, ETH Zurich

Page 19: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Swarms for Data MiningWe have already seen how swarms of insects are able to cluster similar objects together. Software engineers have exploited similar ideas to cluster database records, discovering trends in, say, financial information (which customers are likely to default on their loan), or health data (which patients are most likely to develop heart disease).

James MacGill has developed an approach to spatial data mining inspired by insect swarming.Consider a map of the UK with every case of CJD marked.Eyeballing the map will reveal the existence of clusters.But most of these are probably just over the major UK cities, that’s where most of the people live, after all…We need to spot anomalous clusters – where there are more cases than you would expect

Page 20: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Swarms for Data MiningImagine a flock of agents flying across the CJD data set…

Each agent is aware of nearby agents and of the data that passes under it, constantly comparing the number of CJD cases in its vicinity to the local population size.

• When it finds an anomalous “hotspot” it gets excited

• When it finds no interesting data it gets bored

• When it finds no data at all it dies

Agents that are excited slow down, agents that are bored speed up and agents that are dead don’t move at all.

In addition, agents are attracted to nearby excited agents and repelled by any nearby deceased agents.

How does such a system behave?

Page 21: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Self-Organising Data ForagersThe swarm adaptively scans the data set focusing on the interesting parts and ignoring the boring areas.

• The swarm quickly isolates parts of the map with no cases of CJD, littering them with dead agents which dissuade further exploration of those areas.

• Areas where CJD cases are in line with local population density are boring and are quickly passed over.

• Areas where the number of CJD cases in abnormally high or low attract more and more agents of different sizes, scanning the area at different scales and resolutions.

In comparison with exhaustively scanning the map at many different spatial scales, the flocking approach is faster, but perhaps slightly less reliable – MacGill suggests a hybrid approach combing both methods.

Page 22: Bioinspired Computing Lecture 3 Collective Behaviour and Swarm Intelligence.

Issues in Insect AlgorithmsThe development of swarm intelligence is only just beginning. Many open questions exist…• how can we design individual agents such that en masse,

they are able to achieve a desired swarm-level behaviour?– should they be complex or simple?– should they differ from one another?– should they be reactive or non-reactive?– should they learn? How?– should they communicate? How?– should they utilise stigmergy? How?

• should we worry that swarms are not predictable/reliable?

As yet we have few answers – what would a theory of swarm intelligent systems look like?