0% found this document useful (0 votes)
44 views32 pages

Subsumption Vienna

The document discusses the subsumption architecture approach for developing complex robotic behaviors through incremental evolution. It describes how subsumption architecture draws inspiration from biological evolution by developing systems in layers, where each new layer builds upon and influences the layers below it through mechanisms like monitoring, inhibition, and suppression. The document provides an example of how this approach was used to develop increasingly complex forward navigation behaviors in a robot by adding new layers for obstacle avoidance, random movement, and goal-directed exploration.

Uploaded by

Summer Triangle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views32 pages

Subsumption Vienna

The document discusses the subsumption architecture approach for developing complex robotic behaviors through incremental evolution. It describes how subsumption architecture draws inspiration from biological evolution by developing systems in layers, where each new layer builds upon and influences the layers below it through mechanisms like monitoring, inhibition, and suppression. The document provides an example of how this approach was used to develop increasingly complex forward navigation behaviors in a robot by adding new layers for obstacle avoidance, random movement, and goal-directed exploration.

Uploaded by

Summer Triangle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 32

Robotic Summer School 2009

Subsumption architecture
Andrej Lny
Department of Applied Informatics,
FMFI, Comenius University, Bratislava
[email protected]
www.microstep-mis.com/~andy

1 /32

Biomimetic approach
Living creatures provide to engineers
inspiration: engineers can mimic what
nature has already created

2 /32

The main biological inspiration


Structure of a
living creature
is a result of
(Darwinian)
evolution
The structure
reflects steps
of the evolution
3 /32

Adaptive systems versus incremental


development
Nowadays, biomimetic approach is mostly
concerned as tied with domain of genetic
algorithms, genetic programming and
machine learning
However, we present strategy how to mimic
evolution in a hand-made way following
general principles of individuals structure
4 /32

Another biological inspiration


Structure of living creatures has several
typical features: parallelism and hierarchy
Hierarchy is based rather on regulation than
activation
if one severs an eels head from its
spinal cord, the eel does not stop its
sinuous swimming but its movements
become perfectly regular and
continuous. It means its brain rather
inhibits and regulates its spinal cord
than controlling it directly
5 /32

Why biomimetic approach ?


Question: When biomimetic inspiration is
necessary ?
Answer: When the intended behavior of
your robot is really complex
example:
foreseeing
vehicle
6 /32

Scalability problem
For many useful industrial applications it is
sufficient to solve a particular problem
In this case, a simple
pipeline is usually
suitable architecture

7 /32

Scalability problem
However other tasks
like control of
mobile robots or
simulated creatures
require a more
complex behavior
and more advanced
architecture

Robot COG (AiLab MIT, 1993)

8 /32

Minskys approach to architecture


system containing many parallel modules (agents,
resources)
Complex global behavior emerges from simple
local behaviours of individual modules (agents,
resources)
Control = activation of a proper set of modules at
a proper situation
interpolator

left/right

ball
left/right
image

Turn

9 /32

Looking for an architecture


We have many modules continuosly
running in parallel
We have a mechanism of data exchange
among the modules
How can we provide the proper activation?

A possible solution: subsumption


10 /32

Subsumption
It is a method for engineering of artificial
systems with complex behavior
It was proposed by R. Brooks in the mideighties

It mimics simplified biological


evolution
11 /32

Subsumption
It is based on the evolutionary fact that any complex
control has an origin in a simpler ancestor
The relation between the
ancestor and its descendant is
simplified here in such a way
that the descendant contains
exactly the same control
mechanism as the ancestor,
enriched just by an additional
layer of control.

layer 1

layer 2
layer 1
12 /32

Simplification of evolution
In other words, the descendant mechanism
subsumes complete mechanism of its ascendant;
therefore the principle is called subsumption.

layer N

layer 3
layer 2
layer 1

13 /32

Development by subsumption
At the first we design suitable sensors and
actuators which are expected to be sufficient.
Then we imagine a sequence of evolutionary steps
which could result in the desired control starting
from a simple base.
Then we incrementally develop each step as an
additional layer to the previous simpler version.
In doing so, each step brings a set of new features,
but causes no harm to features which have been
already implemented.
14 /32

Development by subsumption
STAGE n

OK

Situation n

SYSTEM
Situation 2

STAGE 1

Situation 1
0

time

Step 1

OK

STAGE 2

OK

STAGE 2

OK

STAGE 1

OK

STAGE 1

OK

Step 2

Step n

Result
15 /32

Situatedness
It is recommended to design the evolutionary steps
in such a way that each step corresponds to the
desired control under simplified conditions.
When the real situation is as simple as concerned
for a particular step, it will be handled only by the
corresponding layer and layers which are
(evolutionary) older.
Getting to more and more difficult situation,
newer and newer levels are activated to influence
the resulting control.
16 /32

Appropriate modularity required


However, how could the newer levels
influence the older ones?
The older levels have been designed for a
particular purpose and have no interfaces
for future development!
The answer is: they have to have modular
structure which enables the influence.
17 /32

Subsumption architecture
level consists of quite simple modules
these modules communicate by messages
sent through wires
module 1

module 2
module 3

18 /32

Influence mechanisms
Subsumption architecture suppose three
mechanisms supporting the influence:
Monitoring
Inhibition
Suppression
19 /32

Monitoring
the newer level can monitor messages
communicated between modules in the
older level by connecting to the same wire.
module3

new layer
old layer
module1

module2
20 /32

Inhibition
it can also inhibit the communication by
temporary interruption of the wire
module3

new layer
old layer
module1

module2

21 /32

Suppression
even it can replace communicated messages

module3

new layer
old layer
module1

module2

22 /32

An
example

Two wheeled robot navigating in a bureau (modified


reimplementation of ALLEN, Brooks 1986)

23 /32

Example step 1
we start with robot which just goes forward

Forward
Forward

forward
forward

Left motor
Right motor

24 /32

Example step 2
Then we add a layer which recognizes obstacles and while
they are detected, the layer replaces messages for one
wheel to backward. As a result, the robot does not collide.

Detection

Avoid
obstacle

Forward
Forward

backward

backward
forward
forward

S
S

Left motor
Right motor

25 /32

Example step 3
However easily it can happen that it stays in the same
region, moving in a cycle. Thus we add a layer which
sometimes causes its random turn. We perform such a turn
only when no obstacles are detected and we implement it
just by apparent detection of obstacles
Random

Turn

random phantom obstacle

trigger

Detection

S
obstacle

Forward
Forward

Avoid

backward

backward
forward
forward

S
S

Left motor
Right motor

26 /32

Example step 4
another layer can a global movement in an absolute direction
from one part to another part of bureau. Once such direction is
chosen, we implement its following by turns which are apparently
random for the older layers, but in fact they keep the robot at the
chosen trajectory
Explorer

path

Compass

Transfer
controlled phantom obstacle

direction

Random

Turn

random phantom obstacle

trigger

Detection

S
obstacle

Forward
Forward

Avoid

backward

backward
forward
forward

S
S

Left motor
Right motor

27 /32

Example step 5
user
Land
marks
obstacle

goal

Navigate

intended path

goal

Compass

Other level can detects


landmarks and having
received a goal from user
it can navigate to one of
them by emulation of the
chosen direction in the
lower level

Explorer

path

Transfer
controlled phantom obstacle

direction

Random

Turn

random phantom obstacle

trigger

Detection

S
obstacle

Forward
Forward

Avoid

backward

backward
forward
forward

S
S

Left motor
Right motor

28 /32

Derivates of subsumption
architecture
behavior-based architectures: restriction of the
influence to suppression of layer outputs
(simplification)
fine-grained architecture: accumulation of various
actions generated by various levels is enabled (data
fusion, more close to neural networks)
many others
29 /32

Derivate implemented at Comenius


University, Bratislava
Long tradition of embodied approch for
engineering due to Jozef Kelemen
(1992 common work with Marvin Minsky)
agent-space architecture: extension of the
influence potential by modernizing the
architecture which overcomes the limitations of
the hardware layout typical for the original
concept
(Lucny 2004)
30 /32

Conclusion
Subsumption architecture is a biologically
inspired method of development of complex
systems
Typical features: incremental development,
situatedness, decentralization, influence by
inhibition and suppression
Reference: Brooks, R.: Cambrian
Intelligence, MIT Press, Cambridge, 1999
31 /32

Thank you !
Andrej Lny
Department of Applied Informatics
FMFI, Comenius University, Bratislava
[email protected]
www.microstep-mis.com/~andy
www.robotics.sk

32 /32

You might also like