Introduction

Intelligent Behaviour

Flocking

At the Massachusetts Institute of Technology (MIT) AI Laboratory, Rodney Brooks has developed robots with multiple behaviours to handle a variety of tasks (Brooks, 1991).

The robots implement the same abstract architecture, called subsumption architecture (Brooks, 1986). This embodies the fundamental ideas of decomposition into layers of task achieving behaviours, and incremental composition through debugging in the real world (Brooks, 1991).

Each activity or behaviour producing system individually connects sensing to action. An activity producing system layer is referred to as a layer. An activity is a pattern of interactions with the world. The layers must decide when to act for themselves, not be some subroutine to be invoked at the beck and call of some other layer (Brooks, 1991).

(Maes and Brooks, 1990) programmed an early six-legged robot to learn to walk using the subsumption architecture along with the behaviour activation schemes of (Maes, 1989). This example is the closest to the machine learning ideas in reinforcement learning. This shows that by incorporating layers of control at increasing levels of competence an autonomous intelligent agent may be created.

This approach to a gradual behavioural sophistication is appropriate for the development of a tadpoid. The initial behaviour of wandering may be developed, then allow it to avoid collisions, evade the predator and so on.

Consider a single tadpoid heading back to the flock and the predator attempting to intercept it. The urgency of the fleeing action of the tadpoid makes it evade the predator until the predator is no longer an influence.

Subsumption architecture allows multiple goals to be achieved. By having prioritised levels of competence the 'flee-predator' level subsumes the 'return-to-flock' level, so the tadpoid can evade capture. The lower 'return-to-flock' level continues to function as the higher 'flee-predator' level is added.

However, I would like the tadpoid to attempt to return to the flock whilst still evading the predator. This is primarily as the tadpoid is safer when in a group so will try to return to the group even if it means taken a longer route to get there.

Rather than have a hierarchical priority of levels of competence, I propose that each tadpoids movement is a sum of the reactions to all the influences at that time. In this way the tadpoid will be able to achieve multiple goals without suppressing lower layers of control.

The architecture is still subsumption in that a basic tadpoid is created so it can move at first and higher levels of competence are added. The initial layer allowing the tadpoid to move is unchanged. In this way I aim to develop a realistic intelligent agent that can avoid collisions, seek safety by grouping, and evade the attentions of the predator utilising real-world physics.


Intelligent Behaviour

Flocking

How is it possible to create a flock?

In 1986 Reynolds developed a computer model of co-ordinated animal motion such as bird flocks and fish schools. It was based on three-dimensional computational geometry of the sort normally used in computer animation or computer aided design. The software is called BOIDS.

The approach to flocking described by Craig Reynolds (Kelly, 1994) follows only a few simple rules encoded into an algorithm. He used this algorithm to control the movement of computer generated bats in the film Batman Returns. A horde of large black bats swarms through flooded tunnels into downtown Gotham. A single bat was created and given leeway to automatically flap its wings. One bat was copied until the animators had a mob. Then each bat was instructed to move about on its own following only a few simple rules encoded into an algorithm: don't bump into another bat, keep up with your neighbours, and don't stray too far away. When the algorithmic bats were run, they flocked like real bats.

As the scenario I require is a field surrounded by a fence and a pen, I will implement two-dimensional geometry. This will be a more realistic environment for a flock to be penned, as herding by an agent is primarily done on the ground. Imagine the task of trying to herd a flock of birds into a cage.

Intelligent Behaviour
Flocking