Professional Documents
Culture Documents
sense perception
modelling
Sense-
Think-Act
planning
Cycle
task execution
Shakey (SRI)
Differences in Design
Sense-Think-Act Cycle Behavior-Based
(reactive) model
sense perception
Modify the World
modelling
Create Maps
actuators
sensors
planning
Explore
task execution
Avoid obstacles
outputs
inputs
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
Reverse
Explore
Wander Go I Layer
Sensors
Forward D Motors
S
Turn away
S Breaks
Avoid-Objects Layer
tied to
actuator Standing Up
tied to Six legs, each with 2 servos
sensor
α : advance (front to back)
• Rectangle (R) : behavior with β: balance (up and down)
AFSM
• R + Green triangle in lower
right : behavior that is tied to
an actuator
• R + Red triangle in upper left
corner : behavior that is tied to
a sensor Beta
Position
• Circle with i: inhibits (no output
from either)
Internal register holds
• Circle with s: suppress set position for each leg Alpha
Position
(replace output) that causes the robot to
stand when power
• Circle with d: defaults comes on
Simple Walking
Suppress Leg Down
signal and replace
Trigger a walk by with Up Leg Trigger
triggering legs to signal when present Suppress
lift in some Lift a leg the Alpha
specific order whenever Balance
cued signal and
replace
Whenever the with Alpha
Up Leg leg is up, swing
Walk Advance
Trigger it forward signal
Attempts to put when
the leg down Leg Beta Alpha present
Down
s Position Advance
whenever it isn’t
Alpha
Sums Alpha
Balance
s Alpha
Positions of all Position
legs to maintain
balance
Walk AFSM: Changing the Gait
Ripple Gait Tripod Gait
1 4 1 2
2 5 2 1
3 6 1 2
Up Leg
Walk
Trigger
Alpha
Balance
s Alpha
Position
Force Balancing
Read in the force
applied to the Lift the leg when the force
beta (up-down) is too high (when you hit
motor. an obstacle)
Beta Beta
Default behavior is to follow
Force Balance
the Beta Balance signal, but
will be replaced when Up Leg
Up Leg Trigger signal is present
Walk
Trigger
d (override).
Alpha
Balance
s Alpha
Position
Leg Lifting
Trade-off between lifting the
leg high to move over
obstacles and speed of
walking When you
hit
Beta Beta something
Force Balance while
advancing
the leg
Up Leg Alpha
Walk
Trigger
d Collide
forward,
then lift the
leg higher
Leg Beta Alpha
Down
s Position Advance
Alpha
Balance
s Alpha
Position
Walking over Obstacles
Leg Lifting
Beta Beta
Force Balance
Up Leg Alpha
Walk
Trigger
d Collide
Alpha
Balance
s Alpha
Position
Whiskers Can also trigger this
leg lifting behavior
Read in the when the feelers
sensor values of contact something in
the 2 feelers. front of the robot…
a pre-emptive
Feeler movement
Beta Beta
Force Balance
s
Up Leg Alpha
Walk
Trigger
d Collide
Alpha
Balance
s Alpha
Position
Pitch Stabilization
Read sensor When the pitch is high, the load on
values for 2 the legs is high, but should not trigger
inclinometers a balance adjustment. Inhibit all
For/back
output signals.
Pitch
Feeler
Beta Beta
Force Balance
i
s
Up Leg Alpha
Walk
Trigger
d Collide
Prowling
Walk only if moving
heat-source is detected.
Signal high if none
found.
IR For/back
Prowl
Sensors Pitch
Feeler
Beta Beta
Force Balance
i
s
Up Leg Alpha
Walk i Trigger
d Collide
Alpha
Balance
s Alpha
Position
Steer
Following People
Complete Behavior System
IR
Prowl
For/back Total of 57 AFSMs
Sensors Pitch
Distributed over 4
Feeler
processors
Beta Beta
Force Balance
i
s
Up Leg Alpha
Walk i Trigger
d Collide
Alpha
Balance
s Alpha
Position
Steer
Conclusions
• A demonstration of how complex
behaviors, such as walking, can be
constructed from a network of relatively
simple reflexes with little central control
– No central area for sensor fusion
– Addition of more complex behaviors is tightly
integrated with the low-level behaviors
• Results in systems that are difficult to predict
• But these systems also can produce complex,
interesting behavior from simple additions
Administrivia
• Up next: Subsumption meets machine
learning
– Reading: Arkin, p. 305-316
• PS#1 out now