Post on 24-Dec-2015
transcript
Sensor-Actuator Networks(Braitenburg Vehicles)
“Experiments in Synthetic Psychology”OR
Steps toward “[really] artifical life”
Norm BadlerSteve LaneCSE 377
General Structure
Decision_function
Sensors Actuators
Environment
Actuators = Decision_function(Sensors)
A Simple Example
kS
S V=kS
Environment
V = k(S)Velocity is a linear function of sensor value
Basic Braitenberg Vehicle Design
• Sensor/Actuator Pairs
• Light or other environment feature sensor(s)
• Motor(s) (wheels)
• “Wiring”
Vehicle 1
Two Motors Make it a Little More Interesting (Left-Right Actuators)
kl(Sl) ; kr(Sr)
Sl;Sr Vleft = kl(Sl); Vright = kr(Sr)
Environment
Vleft = kl(Sl); Vright = kr(Sr)Velocity of (left, right) actuators are
linear functions of two sensor values
A Little More Complex
kl(Sr) ; kr(Sl)
Sl;Sr Vleft = kl(Sr); Vright = kr(Sl)
Environment
Vleft = kl(Sl); Vright = kr(Sr)Velocity of (left, right) actuators are
linear functions of two sensor values (but crossed)
Excitatory and Inhibitory Functions
kl(Sl) ; kr(Sr)
Sl;Sr Vleft = kl(Sl); Vright = kr(Sr)
Environment
Vleft = kl(Sl); Vright = kr(Sr)Functions may be excitatory (+) or inhibitory (-)(essentially reflects the slope of the function)
Fear & Aggression
Vehicle 2
Exploring & Love
Vehicle 3
Values & Special Tastes – Con’t
Vehicle 4
• The outer 2 sensors are uncrossed & excitatory
• The next pair in are crossed and excitatory
• The third pair are uncrossed and inhibitory like Sensor/Actuator Pairs
• The fourth pair are crossed and excitatory.
Values & Special Tastes
Vehicle 4
• Dislikes high temperature (turns away from hot places.
• Dislikes light sources (turns toward them and destroys them.
• Prefers oxygenated environment containing organic matter
• Can move elsewhere when O2 & food scarce.
VALUES, KNOWLEDGE & INFERENCE
• From the outside you might conclude that Vehicle 4 has:– a system of VALUES
• Dislikes high temperatures• Dislikes light sources• Prefers environments with food sources
– KNOWLEDGE of its environment and
– an INFERENCE ability • Light bulbs are a source of heat• If I destroy them then I will be cooler• Oxygen & organic matter make energy
But What’s Really Going On?
• Intelligence implies the ability to acquire, represent and process information
• There was no such acquisition or representation of information here.
– In constructing Vehicle 4 we were just playing with the wiring between sensors and actuators
• The behavioral properties and responses that emerge may look intelligent but they really are not.
– When we analyze a system we tend to overestimate its complexity
– Anyone have pets?
Taking this Further
Fl(params,Sl,Sr); Fr(params,Sl,Sr)
Sl;Sr Vleft = Fl(…); Vright = Fr(…)
Environment
Vleft = Fl(params,Sl,Sr); Vright = Fr(params,Sl,Sr)Velocity of (left, right) actuators are non-linear,
parametric functions of two sensor values
Non-linear sensory responses
V= speed of motorI= intensity of stimulation
What’s the Point?
Hard-wired function; Learned function
“Eyes”;“Ears”
“Hunger”
Wheels; Legs; Color;Other internal state
Environment
The decision functions relate actuator behaviorsto the sensed environment.
Can generalize any component.
Decisions ?
Sensor Scope ?
What (Who) is Being Sensed?• Environment
– Check for obstacles, food sources, lights, etc.
– Beware zig-zag wall following…
• Other [nearby] vehicles/creatures
– Check local environment for motion of neighbors, gives rise to flocking and herding behaviors.
– Boids
Some other links
Vehicles: Experiments in Synthetic Psychology, by Valentino Braitenberg (1984), Bradford Books, MIT Press, ISBN 0-262-02208-7
• Braitenberg demos• Braitenberg Vehicles• BEAST• POPBUGS• Gerken (Dewdwey article)• Some implementation notes• You can find a lot more if you Google…
Conclusions• The interaction of simple devices and systems can give rise
to a variety of complex emergent behavior• Many of these individual behaviors can be readily seen in
animals such as insects, bees, ants, etc.– love, fear, aggression, foraging, exploring, etc,
• Group behaviors also can be created in a similar manner– Flocking, herding, schooling, etc.
• You can implement this for particular cases in your worlds.• The computational model is scalable to multiple individuals
(“code re-use”, parameterized).• Lesson Learned – [Graphical] Synthesis is a lot easier than
Analysis!