Biologically inspired robotics

Download Report

Transcript Biologically inspired robotics

Controlling Mobile Robots
with Distributed
Neuro-Biological Systems
Sebastian Gutierrez-Nolasco (UCI)
Nalini Venkatasubramanian (UCI)
Alfredo Weitzenfeld (ITAM)
Contact info
[email protected]
Biologically Inspired Robotic Systems

Nature has always been a source of inspiration in the
development of autonomous robotic systems

Ethology

Animal behavior-based simulation


Interaction with the environment is usually oversimplified

Lack of strong biological basis for their working assumptions

Lack of any formal underpinnings for the simulation results
Neuroethology

behavior related to neurobiological structure


Replicate brain models to provide credible and general animal behavior

Provide inspiration for further robotics architectures
More complex and accurate than ethology systems

Enable experimentation

Experimentation requires real-time performance
Neuroethological robotic systems

Super Robots

Incorporate extensive
processing capabilities



Bulky
Expensive
Inexpensive Robots


Smaller and inexpensive robots
connected to a network of
processing nodes
Concerns


Real-time performance
Unpredictable communication
environment affects robot
performance
Challenges of Biologically Inspired Autonomous Robots

A neural model may take hours of processing time

Simulation of multiple neural networks require a distributed
processing environment


Biologically inspired robotics demand sophisticated
image processing techniques


A typical retina model may consist of more than 100,000 neurons and
500,000 interconnections
Communication intensive tasks are required
Autonomous robotic agents have real-time and
processing restrictions, as well as power awareness
requirements

Battery usage is a major concern in mobile robots
Developing Biologically Inspired Robot Architectures

Developing software for autonomous mobile robots is
complex

Highly heterogeneous methods for capturing and processing
sensor information



Multiple sensory input devices
Sensory input multi-granularity
Communication is error-prone due to unpredictable interference
and failures



partial and complete failures
Unreliability and disconnection
Varying available bandwidth
Our Approach

Develop an embedded architecture capable of
conducting neuroethological robotic experimentation

Inexpensive small robots communicate (wireless) with distributed
computational resources

Neural models are distributed in multiple processing nodes

Adaptive robotic middleware optimizes robot
communication in response to varying network conditions
Structure of the Talk
Neuroethological Modeling
1.

Study animal behavior and corresponding neural structure
as inspiration to robotic architectures
Embedded Mobile Robots
2.

Develop distributed wireless robot architectures capable of
efficient neural processing
Adaptive Middleware
3.

Achieve real-time computation and adapt embedded
architecture to varying network conditions
Internet Based Robotics
4.

Enable remote robot task development and
experimentation
Neuroethological Modeling
1.

Study animal behavior and corresponding neural structure
as inspiration to robotic architectures
Embedded Mobile Robots
2.

Develop distributed wireless robot architectures capable of
efficient neural processing
Adaptive Middleware
3.

Achieve real-time computation and adapt embedded
architecture to varying network conditions
Internet Based Robotics
4.

Enable remote robot task development and
experimentation
Behavior:
Frog and Toad - Rana Computatrix [Arbib 1987, Cervantes 1990]
-
PS
MO
+
+
-
PS
Mate
PS
Prey
Mate-Pair
S
Prey-Acq
S
Moving-Object
S
Perceptual Schema (PS)
Main Schema (S)
PS
NMO
+
-
PS
Pred
Pred-Av
S
Find-Loc
S
Non-Moving-Object
S
Behavior:
Toad Prey Acquisition [Cervantes 1985]
Stimulus
Response
Mobile visual stimulus
in lateral visual field
(monocular perception)
Orientation
Mobile visual stimulus
in binocular visual field
(short distance)
Binocular
fixation
Attack
Mechanic stimulus
in mouth and pharynx
receptors
Snap
Clean
Behavior:
Toad Prey Acquisition with Detour Behavior Before and After Learning
[Corbacho and Arbib 1995]
10cm Barrier
20cm Barrier Before learning
20cm Barrier After learning
Schema Computational Model
...
...
din n
Schema Level 1
Schema
...
...
dout 1
din 1
dout m
data in
data out
Schema Level 2
Schema Level
Neural Level
Neural
Other Processes
Neural based Behavior :
Toad Prey Acquisitions and Predator Avoidance
Prey Recognizer
Prey Approach
Moving Stimulus Selector
Predator
Recognizer
Depth
Forward
Predator Avoid
Visual
Orient
Backward
Sidestep
Static Object
Recognizer
Tactile
Static Object
Avoidance
Schema Level
Tectum
Retina
R1-R2
R1-R2
R3
R3
R4
R4
Stereo
T5_2
R1-R2
Motor Heading Map
R3
R4
MaxSelector
Neural Level
TH10
PreTectum/Thalamus
Toad Prey Acquisition with Detour:
Simulation Results
16
15
14
4 7 10 13
12
6 9
3
5 8 11
2
1
10cm barrier
20cm barrier
Before learning
20cm barrier
After learning
Neuroethological Modeling
1.

Study animal behavior and corresponding neural structure
as inspiration to robotic architectures
Embedded Mobile Robots
2.

Develop distributed wireless robot architectures capable of
efficient neural processing
Adaptive Middleware
3.

Achieve real-time computation and adapt embedded
architecture to varying network conditions
Internet Based Robotics
4.

Enable remote robot task development and
experimentation
Embedded Mobile Robots:
Robot Hardware
Sensors
Vision
Tact
Actuators
Legs
Wheels
LEGO
OOPIC
Embedded Mobile Robots:
Distributed Embedded Architecture
Wireless
Remote
Computaional
System
Autonomous Robot 1
...
...
Internet
Server
...
Internet
Instance 1
Autonomous Robot N
Remote
Computational
System
Instance N
Embedded Mobile Robots:
Distributed Embedded Architecture
 Time consuming processes are carried out in the
(neural) computational system



Limited task are carried out in the robot hardware




Neural processing
Image processing
Sensory input
Motor output
Default behavior
Communication and data transformation is managed by
the adaptive middleware
Embedded Mobile Robots:
Distributed Embedded Architecture
camera
Remote Computaional System
servo
Robot
Wireless
Frame Grabber
Transceiver
PC
CPU
(OOPic)
Transceiver
Power stage
motor
motor
Sensors
(tact)
Embedded Mobile Robots:
Distributed Embedded Architecture
Remote Computational System
Wireless
Video/
Image
Processing
ASL
ASL
ASL
NSL
NSL
NSL – Neural Simulation Language
ASL – Abstract Schema Language
Robot
Video
Server
Tactile
Server
Motor
Server
transceiver
ASL
NSL
transceiver
NSL
camera
tactile
motor
Embedded Mobile Robots:
Processing cycle
Video capture
Video processing
Model simulation
Model output
Navigation control
(d , r , c)
Neuroethological Modeling
1.

Study animal behavior and corresponding neural structure
as inspiration to robotic architectures
Embedded Mobile Robots
2.

Develop distributed wireless robot architectures capable of
efficient neural processing
Adaptive Middleware
3.

Achieve real-time computation and adapt embedded
architecture to varying network conditions
Internet Based Robotics
4.

Enable remote robot task development and
experimentation
Distributed Systems Middleware

Enables the modular interconnection of distributed
software


Concurrent Object Oriented Model


Abstract over low level mechanisms used to implement resource
management services
Separation of concerns and reuse of services
Customizable, Composable Middleware Frameworks


Provide for dynamic network and system customizations,
dynamic invocation/revocation/installation of services
Concurrent execution of multiple resource management policies
Core Resource Management Services

Core Services - basic services where interactions
between the application and system can occur.



Building blocks for other services
Reduce interactions among many services to interactions
between a few simple services
Choosing core services - commonly observed patterns



Recreation of data/services at a remote site
Capturing approximation of distributed state at multiple sites
Interactions with a global repository
TLAM: The Two Level Meta-architecture
System (Meta) Level
Replication
Access
Control
DGC
Migration
Remote
Creation
Checkpointing
Distributed
Snapshot
Directory
Services
Application (Base) Level
Adaptive Robotic Middleware (ARM)

Extends the TLAM to

Optimize information flow between robots and the computational
system


Compose communication protocols to obtain the combined
benefits - conflicting requirements


Determine how, when and what information should be modified in
order to match fluctuations in the communication environment
Explicit knowledge of how communication protocols compose and
interact is required
Adapt protocols and mechanisms to changing communication
and power constraints
ARM: Distributed Embedded Architecture
Remote Computational System
Wireless
ARM
Video/
Image
processing
Robot
Video
Server
ASL
ASL
ASL
NSL
NSL
NSL – Neural Simulation Language
ASL – Abstract Schema Language
Tactile
Server
Motor
Server
ARM
transceiver
ASL
NSL
transceiver
NSL
camera
tactile
motor
ARM: Components

Communication manager


Provide and enforce application level requirements
Components

Oracle





determine most suitable protocol implementation in terms of coverage and efficiency
Set of communication protocols
Protocol installer/uninstaller
Resident ARM module running in the robot (resident evil)
Adaptation manager

Provide adaptation and monitor mechanisms operating at different levels of
abstraction

Reactive


Proactive


Triggered when failure to achieve intended communication goal is detected
Triggered when a more efficient communication can be achieved under the current
environment conditions
Adaptation Repository

Determine most suitable adaptation strategy to be applied
ARM: Example
Communication Requirement
Secure compressed
video capture
Communication Manager
Protocol
(un)installer
Protocol
Oracle
ARM manager
Protocol
loader
set of
protocols
Robot’s
resident
ARM
Battery
Monitors
Adaptation
Profiler
Security
Protocol
Compression
Protocol
Timeliness
Protocol
Communication Performance Monitor
Adaptation
Repository
Adaptation Manager
Neuroethological Modeling
1.

Study animal behavior and corresponding neural structure
as inspiration to robotic architectures
Embedded Mobile Robots
2.

Develop distributed wireless robot architectures capable of
efficient neural processing
Adaptive Middleware
3.

Achieve real-time computation and adapt embedded
architecture to varying network conditions
Internet Based Robotics
4.

Enable remote robot task development and
experimentation
Interned based Robotics: Web Access
Experimental Results: 2 Preys
Experimental Results: 2 Preys and Predator
Embedded Mobile Robots:
Experimental Results: Prey Acquisition with 10 cm Barrier
(A)
(B)
(C)
(D)
Embedded Mobile Robots:
Experimental Results: Prey Acquisition with 20 cm Barrier
(A)
(B)
(C)
(D)
(E)
(F)
(G)
(H)
Neural based Behavior: Prey Acquisition (10cm barrier)
• Barrier (PreTectum)
• Prey (Tectum)
• Integrated (MHM)
• Heading (MHM)
•Tactile
Visual Fields
Neural based Behavior: Prey Acquisition
(20cm barrier before bumping)
• Barrier (PreTectum)
• Prey (Tectum)
• Integrated (MHM)
• Heading (MHM)
•Tactile
Visual Fields
Neural based Behavior: Prey Acquisition
(20cm barrier after bumping)
• Barrier (PreTectum)
• Prey (Tectum)
• Integrated (MHM)
• Heading (MHM)
•Tactile
Visual Fields
Neural based Behavior: Prey Acquisition
(20cm barrier after learning)
• Barrier (PreTectum)
• Prey (Tectum)
• Integrated (MHM)
• Heading (MHM)
•Tactile
Visual Fields
Future Work






Complete Internet based System
Develop middleware adaptation capabilities
Build smaller robotic systems
Extend to multiple robot tasks
Extend vision system to “true” moving forms
Extend biological models
Video
Bonus Section
Research Cycle
Formal Models
Data, Hypotheses
Neuroscience
(Experiments)
Brain Theory
(Modeling)
New Hypotheses
New Ideas
(Results from
Experiments with
Physical Devices)
New Hypothesis
Gaps in Knowledge
Robotics
Neural Maps
T - Temporal, D - Dorsal, N - Nasal, V - Ventral
O - Optic Tectum, B - Nucleus of Belonci
C - Lateral Geniculate Nucleus,
P - Thalamic Pretectal Neuropil
X - Basal Optic Root
[Scalia and Fite 1974]
Neuron Model
s
mp
mf
input
neuron
output



mp - membrane potential : dmp(t)/dt = f(s,mp,t)
mf - firing rate : mf(t) =s(mp(t))
Leaky Integrator : t dm(t)/dt = -m(t) + s
Retina-Thalamus-Tectum
+
+
Retina
Input
TP
R4
R3
R2
+
+
+
TP – ThalamusPreTectum
GL – Glomerelus
SN – Stellate Neurons
SP – Small Pear
LP – Large Pear
PY - Pyramidal
+
GL
SN
-
-
SP
+
+
+
-
LP
Synapsis
+
Excitation
-
Inhibition
+
-
+
+ +
+
+
+
-
PY
Output
Max Selector [Didday 1976]
s0
up1
up0
wu0
uf0
wu1
wm
upi
........
uf1
w0
tu
si
s1
wun-1
ufn-1
wi
w1
wn-1
vp
vf
dui t 
 ui  wu f ui   wm g v   h1  si
dt
n
dv
t v  v  wn  f ui   h2
dt
i 1
upn-1
........
ufi
wui
sn-1
1 ui  0
f (ui )  
0 ui  0
v v  0
g(v)  
0 v  0
Max Selector Model
MaxSelectorModel
MaxSelector
out
MaxSelector
Stimulus
s_out
in
Vlayer
Ulayer
s_in
uf
u_in
vf
uf
s_in
MaxSelector
Output
v_in
nslModel MaxSelectorModel () extends NslModel()
{
private MaxSelector maxselector(10);
private MaxSelectorStimulus stimulus(10);
private MaxSelectorOutput output();
public void initSys() {
system.setRunTime(10.0);
system.setRunDelta(0.1);
}
public void makeConn() {
nslConnect(stimulus.s_out,maxselector.s_in);
nslConnect(stimulus.s_out,output.s_in);
nslConnect(maxselector.out, output.uf);
}
}
Max Selector Module
MaxSelector
out
Vlayer
Ulayer
in
s_in
uf
u_in
vf
v_in
nslModule MaxSelector (int size) extends NslModule()
{
public Ulayer u1(size);
public Vlayer v1(size);
public NslDinDouble1 in(size);
public NslDoutDouble1 out(size);
public void makeConn(){
nslRelabel(in,u1.s_in);
nslConnect(v1.vf,u1.v_in);
nslConnect(u1.uf,v1.u_in);
nslRelabel(u1.uf,out);
}
}
Ulayer and Vlayer Modules
Vlayer
Ulayer
s_in
u _in
uf
vf
v _in
nslModule Ulayer(int size) extends NslModule ()
{
public NslDinDouble1 s_in(size);
public NslDinDouble0 v_in();
public NslDoutDouble1 uf(size);
private NslDouble1 up(size);
private NslDouble0 hu();
private double tau;
public void simRun() {
up =0;
uf = 0;
hu = 0.1;
tau =1.0;
}
public void simRun() {
up = nslDiff(up,tau, -up + uf - v_in – hu + s_in);
uf = nslStep(up,0.1,0.1.0);
}
}
nslModule Vlayer(int size) extends NslModule ()
{
public NslDinDouble1 u_in(size);
public NslDoutDouble0 vf();
private NslDouble0 vp();
private NslDouble0 hv();
private double tau;
public void initRun() {
vp =0;
vf = 0;
hv=0.5;
tau=1.0;
}
public void simRun() {
vp = nslDiff(vp,tau,-vp+nslSum(u_in) – hv);
vf = nslRamp(vp);
}
}
Neuron (detailed)
Neuron
Dendrite
Axon
Soma
Axon
Dendrites
Synapse
Soma
Synapses
Axon
Terminal
Spine
Synaptic
Cleft
Calcium
Mechanism
Receptor
Vescicle Interacellular
Element
Channel
Diffusion
Buffer
Pump
AMPA
Receptor
NMDA
Receptor
Neuroscience:
Autonomous Biological Agents
Sensors
Vision
Sound
Smell
Touch
Actuators
Legs
Wings
Fins
Robotics:
Autonomous Robotic Agents
Sensors
Vision
Sound
Smell
Touch
Actuators
Legs
Wings
Fins
Wheels