Biologically Inspired Computation Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at : Lecture 5: Introducing.

Slides:



Advertisements
Similar presentations
Swarm-Based Traffic Simulation
Advertisements

Beyond the Centralized Mindset
Flocking and more.  NPC groups can move in cohesive groups not just independently ◦ Meadow of sheep grazing? ◦ Hunting flock of birds? ◦ Ants? Bees?
Game Theory Game theory is an attempt to model the way decisions are made in competitive situations. It has obvious applications in economics. But it.
Evolving Flocking Simulation and Robotics Dan Sayers iotic.com.
Biologically Inspired Computation Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at : Introducing Swarm Intelligence.
Flocks, Herds and Schools Modeling and Analytic Approaches.
Flocking Behaviors Presented by Jyh-Ming Lien. Flocking System What is flocking system? – A system that simulates behaviors of accumulative objects (e.g.
Better Group Behaviors in Complex Environments using Global Roadmaps O. Burchan Bayazit, Jyh-Ming Lien and Nancy M. Amato Presented by Mohammad Irfan Rafiq.
Flocks, Herds, and Schools: A Distributed Behavioral Model By: Craig Reynolds Presented by: Stephanie Grosvenor.
1 CO Games Development 2 Week 22 Flocking Gareth Bellaby.
OBJECT-ORIENTED THINKING CHAPTER Topics  The Object-Oriented Metaphor  Object-Oriented Flocks of Birds –Boids by Craig W. Reynolds  Modularity.
Florian Klein Flocking Cooperation with Limited Communication in Mobile Networks.
Behavioral Animation Procedural Animation Type?. Behavioral Animation Introduced by C. Reynolds (1987) Animating many things at one time –A group of the.
Swarm algorithms COMP308. Swarming – The Definition aggregation of similar animals, generally cruising in the same direction Termites swarm to build colonies.
CITS4403 Computational Modelling Agent Based Models.
Biologically Inspired Computation Lecture 10: Ant Colony Optimisation.
Jochen Triesch, UC San Diego, 1 Emergence A system with simple but strongly interacting parts can often exhibit very intricate.
1Notes  Assignment 2 is out  Flocking references  Reynolds, “Flocks, Herds, and Schools…”, SIGGRAPH’87  Tu and Terzopoulos, “Artificial Fishes…”, SIGGRAPH’94.
John S Gero Agents – Agent Simulations AGENT-BASED SIMULATIONS.
Bart van Greevenbroek.  Authors  The Paper  Particle Swarm Optimization  Algorithm used with PSO  Experiment  Assessment  conclusion.
Artificial Intelligence (CS 461D)
Optimality of Ant Foraging Jason Green Supervisor: Bernd Meyer Is it really optimal, and how do we find that out?
Better Group Behaviors in Complex Environments using Global Roadmaps O. Burchan Bayazit, Jyh-Ming Lien and Nancy M. Amato Andreas Edlund.
1cs426-winter-2008 Notes  Please read: C. Reynolds “Flocks, Herds, and Schools…” SIGGRAPH ‘87
Summer 2011 Thursday, 8/4. Modules Dissociable functional components, e.g. stereo speakers, keyboards. Mental modules are: isolable function-specific.
Biologically Inspired Computation Ant Colony Optimisation.
Distributed Systems 15. Multiagent systems and swarms Simon Razniewski Faculty of Computer Science Free University of Bozen-Bolzano A.Y. 2014/2015.
SWARM INTELLIGENCE IN DATA MINING Written by Crina Grosan, Ajith Abraham & Monica Chis Presented by Megan Rose Bryant.
LEZIONE UNDICI SELF-ORGANIZATION AND EMERGENCE IN DYNAMIC SYSTEMS.
Biology: flocking, herding & schooling Day 5 COLQ 201 Multiagent modeling Harry Howard Tulane University.
Sight Words.
Swarm Intelligence 虞台文.
Algorithms and their Applications CS2004 ( )
PSY105 Neural Networks 1/5 1. “Patterns emerge”. π.
Liang, Introduction to Java Programming, Eighth Edition, (c) 2011 Pearson Education, Inc. All rights reserved Event Driven Programming, The.
Stigmergy: emergent cooperation
(Particle Swarm Optimisation)
Kavita Singh CS-A What is Swarm Intelligence (SI)? “The emergent collective intelligence of groups of simple agents.”
Synchrony in Social Groups and Its Benefits - By Qi Xuan and Vladimir Filkov Prem Nath Bharti IIT Kanpur 2th November 2014 Prem Nath Bharti (IIT Kanpur)Synchrony.
Biologically Inspired Computation Ant Colony Optimisation.
Exploring Complex Systems through Games and Computer Models Santa Fe Institute – Project GUTS
Predator/Prey Simulation for Investigating Emergent Behavior Jay Shaffstall.
Chapter 1 Introduction to Game AI April 11,
Biologically Inspired Computation Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at : Lecture 5: Introducing.
Complexity: Ch. 1 Complexity in Systems 1. Broad Examples Insect colonies The brain The immune system Economies The World-wide Web Complexity in Systems.
CLASS 10 SCENE GRAPHS BASIC ANIMATION CS770/870. A scene Graph A data structure to hold components of a scene Usually a Tree of a Directed Acyclic Graph.
Controlling the Behavior of Swarm Systems Zachary Kurtz CMSC 601, 5/4/
Neural Networks and Machine Learning Applications CSC 563 Prof. Mohamed Batouche Computer Science Department CCIS – King Saud University Riyadh, Saudi.
Study of Individual and Group responses of Mexican Free Tailed Bats Presented by Aruna Raghavan.
Particle Swarm Optimization † Spencer Vogel † This presentation contains cheesy graphics and animations and they will be awesome.
CS 350 – Software Design Expanding Our Horizons – Chapter 8 The traditional view of objects is that they are data with methods. Sometimes objects could.
REFERENCES: FLOCKING.
Chapter 3 Surveys and Sampling © 2010 Pearson Education 1.
Swarms MONT 104Q – Mathematical Journeys, November 2015.
Biologically Inspired Computation Ant Colony Optimisation.
2-Day Introduction to Agent-Based Modelling Day 2: Session 7 Social Science, Different Purposes and Changing Networks.
Path Planning Based on Ant Colony Algorithm and Distributed Local Navigation for Multi-Robot Systems International Conference on Mechatronics and Automation.
Magnetic Earth A few years ago, I read a book by Clive Cussler entitled, “Polar Shift.” The story deals with a diabolical scientist who wants to send some.
Students: Yossi Turgeman Avi Deri Self-Stabilizing and Efficient Robust Uncertainty Management Instructor: Prof Michel Segal.
Particle Swarm Optimization (PSO) Algorithm. Swarming – The Definition aggregation of similar animals, generally cruising in the same directionaggregation.
Modelling and Simulating Social Systems with MATLAB
BIOLOGICALLY MOTIVATED SYSTEMS
A theory on autonomous driving algorithms
Lecture XVII: Distributed Systems Algorithms Inspired by Biology
11/18/2018 In the name of God A Fish School Clustering Algorithm: Applied to Student Sectioning Problem By: Mahmood Amintoosi, Mahmoud Fathy, Naser Mozayani,
Navigation In Dynamic Environment
Computer Graphics Lecture 15.
Hiroki Sayama NECSI Summer School 2008 Week 2: Complex Systems Modeling and Networks Agent-Based Models Hiroki Sayama
Presentation transcript:

Biologically Inspired Computation Some of the images in this lecture come from slides for a Course in Swarm Intelligence given at : Lecture 5: Introducing Swarm Intelligence contents: the behavior of natural swarms and flocks -- Reynold’s rules and swarm simulation.

Swarms, and how they might inspire us There are some interesting things that come to mind when we think of swarms (flocks, schools, etc …): A swarm sometimes seems to behave as if it is an individual organism. Ants or wasps on a hunt for food, or on the attack, behave as if with a single mind, co-ordinating different actions with different parts of the swarm. A swarm, of ants/bees/locusts/etc often exhibits behaviours that seem clearly more intelligent than any of the individual members of it. The way in which swarms in some species change direction is astoundingly well co-ordinated. The way in which swarms in some species avoid obstacles seems to be extremely well choreographed

Other puzzling things that swarms do Termites build huge nests – how?? Is an individual termite clever enough to do this? Bees build hives, with complex internal structure -- same question. How on earth can these things happen? HERE IS A LIVE EXAMPLE

Two simple rules: While continually wandering randomly: 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.

We sometimes exhibit swarm behaviour too

locustsants But we’re mainly interested in animals and insects Because we might learn something

Why 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% faster (why?). Frightening and confusing predators; avoiding being “picked off” Helping to catch prey: e.g. tuna school in a crescent shaped flock with the concave part forward: This is thought to help channel their prey to the “focus”, and stop them from escaping

It also maybe helps with migration If we can assume that: –An individual has an idea, but not a perfect one, of where to go … e.g. by itself it may go a few degrees off course. –The “errors” of individuals are not correlated (i.e. they’re all wrong in a randomly different way) –An emergent result of the flocking is that the flock’s direction is the average of its members’ directions. 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.

So … 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 …

Another kinds of swarm behaviour is the dynamics and evolution of ideas as they get passed on and changed in social networks. A recommends to B, B recommends to C, …

The Adaptive Culture Model 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 … 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) immediate neighbourhood. 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 inspiration …

Two main things that come from swarm inspiration: Simulations of natural flocks. For the entertainment and gaming industries, for example. Optimisation algorithms. 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. Meanwhile, the adaptive culture model has led to a different, and also very successful, new optimisation algorithm

Craig Reynolds and “Boids” 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 This paper is examinable reading, available on my teaching page. The story is: before this paper, animations of flocks, swarms, groups, and so on, behaved nothing at all like the real thing. Nobody knew how to make it realistic. (we still have that problem with fire, explosions, and realistic human movement, etc …) Reynold’s solved the problem by trying a very simple approach, which was inspired by a sensible view of how animals actually do it.

The problem 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?

The problem 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?

Reynold’s Rules 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 away.

A simple sensory system 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.

Rule 1: Separation At each iteration, a boid makes an adjustment to its velocity according to the following rule: Avoid getting too close to local (the ones it is aware of) flockmates.

Rule 2: Alignment At each iteration, a boid makes an adjustment to match its velocity to the average of that of its local flockmates.

Rule 3: Cohesion At each iteration, a boid makes an adjustment to its velocity towards the centroid of its flockmates.

Notes: It’s not quite as simple as that to get realistic behaviour 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: Ant Colony Optimization