The Hierarchical Paradigm

Download Report

Transcript The Hierarchical Paradigm

5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Designing a Reactive
Implementation
• List the steps involved in designing a reactive
behavioral system.
• Use schema theory to program behaviors using objectoriented programming principles.
• Design a complete behavioral system, including
coordinating and controlling multiple concurrent
behaviors.
• Describe the two methods for assembling primitive
behaviors into abstract behaviors: finite state machines
and scripts.
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
1
5
Steps in Designing a Reactive
Behavioral System
Describe the task
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Describe the robot
Specification
& Analysis:
ecological
niche
Describe the environment
Describe how the robot should
act in response to its environment
Design
Implement & refine each behavior
Test each behavior independently
Test behaviors together
Introduction to AI Robotics (MIT Press)
Implementation
& unit testing
System
Testing
Chapter 5: Designing a Reactive Implementation
2
5
CSM 1994 UGV Competition
(this is from
1996, but it’s
a way better
picture)
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
• Fully autonomous vehicle, all on-board, navigate a course
10ft wide, about 800ft long
• Obstacles
• Carry a 20 pound payload
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
3
5
1-3. Describe the Task, Robot,
Environment
Camcorder on a
Panning mast, going to
A framegrabber
Design
-Beh. Table
-Steps
Case Study Sonar on a panning
Coordination mast
-FSA
-Scripts
Summary
33MHz 486 PC running
Lynx (commercial unix)
• Have to use computer vision… black &white, slow processor
speeds (didn’t get to design the robot)
– White (bright) should be in the center of the image
– Reflections on grass are white, but random so average out
• If stay in middle, never encounter an obstacle!
• 150ms update rate needed for steering to stay in control at ~1.5mph
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
4
5
4. Describe how robot should act
•
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Follow the line and stay in the middle
– Follow-line
– Only need the Camcorder!
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
5
5
5-6 Refine and test each behavior
• Follow-line
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
– Worked with toilet paper (indoors),
– Worked with athletic line tape (outdoor)
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
6
5
7 Test with other behaviors
• “Full dress rehearsal”
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
– Oops, bales of hay are bright compared to grass, change the
centroid to cause collision
• Go back to step 4:
– Follow line until “see” an obstacle, then just go straight until
things return to normal
• Hard to do visually in real time
• Sonar! Look to the side and when something is close, it’s a bale,
so go straight
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
7
5
Final System
• Round 1
Design
-Beh. Table •
-Steps
Case Study
Coordination
-FSA
•
-Scripts
Summary
– OOPS: sonar connection
off so it hit the bale
Round 2
– White shoes and
dandelions, plus Killer
Bale
Demo round
– Hill vs. implicit flat earth
assumption
• Round 3
– Trapped by sand, but
$5K richer!
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
8
5
Main Points
• Let the WORLD BE ITS OWN BEST
REPRESENTATION and CONTROL STRUCTURE
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
– “line” wasn’t a “line” just centroid of brightest pixels in the
image
– Pick up trash: if can is in gripper, then go to the recycle bin
• Design process was iterative; rarely get a workable
emergent behavior on the first try
• There is no single right answer
• Could have been done with subsumption, pfields, rules,
whatever
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
9
5
Other Lessons Learned
• Don’t count on getting much work done in the field!
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
“A river runs through it…”
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
10
5
Case Study and Field Trip:
Polar Robotics
• Existing robots
– DANTE, DANTE II
– Nomad
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
11
5
DANTE
• Task
– explore volcanoes in
Antarctica (reduce risk to
vulcanologists)
• Environment
– steep, rocky slopes
• Robot
– legged “framewalker”
• Behaviors
– rappel down
• Refine and test
• Test with other behaviors
– 1997 South America, failed
– 1998 Antarctica, med. success
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
12
5
Lessons to Be Learned
• A robot is part of a system, must design system
– example tether breaking
• Testing and evaluation really does take ~30% of the
time allocated (just like software engineering)
– and more to fix the problem
• NASA technical readiness levels
– Level 1: just an idea
– Level 6: demonstrated on a realistic test bed
– Level 9: has flown, fully operational
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
13
5
Nomad
•
Task
– search for and analyze
metorities
•
Environment
– Antarctica
•
Robot
– hybrid mobility, LADAR,
omnivision, sample sensors
•
Behaviors
– search an area using GPS, avoid
negative/positive obstacles, stop
at possible metorities and alert
user. Can be controlled by
human
•
•
Refine and Test
Test with other behaviors
– 1999
– 2000 success
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
14
5
Nomad Omnivision
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
15
5
Hyperion (really about Mars)
• Task
– navigate Arctic
• Environment
– Arctic
• Robot
– wheeled, uses solar
• Behaviors
• Refine and test
• Test with other behaviors
– 2002 success
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
16
5
NASA HMP / Mars Society
Flashline Project Robotics Support
• Confined space inspection of Mars habitat
• Marsupial deployment for fault identification
• Human robot team for collaborative exploration of
•hazardous areas & narrow fissures in search of micro-organisms
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
17
5
Field Trip
• (this can be substituted for worksheet for chapter 5)
• Define a task for a fully autonomous robot(s) to
perform in a polar environment
• Describe the ideal robot, including sensors.
• Describe the environment. Describe what it affords the
task.
• Describe how you would test the robot to reach a
NASA TRL 6
• What are the “unknowns” where you might encounter
problems and time delays?
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
18
Case Study in Pfields:
Docking
5
• Needed for marsupial robots
• Note
–
–
–
–
use of reactivity
simple perception
pfields
improvement over human
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
19
5
Daughter-centric Docking
Behavior
Potential field
methodology:
orientation,
Xbar=
tangent vector
overall size=
attraction vector
(Arkin, Murphy 90)
Silver Bullet:
AMD K-6 400MHz
clearance=+/-2cm
+/-5 degrees
Bujold: Inuktun mVGTV
Pan only, color camera,
optics at about 2ms,
skid steering,
no on-board processor
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
20
5
Docking Behavior Results
• 48 data points (3 per
16 stations) on time
to completion
Pfields weren’t
intended to work
behind the
gate
– by angle
– by radial position
• Larger angles, the
slower, and farther
away the slower
• 2 failures: 3, 7
• Fastest: 26 sec.
• Slowest: 81 sec.
Optics dictated 120 deg, 2m
Approach Zone
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
21
5
Docking Behavior Results:
teleoperation
Autonomous vs. Teleoperated
Performance
17% faster
autonomous
in
m
m
an
ds
/
et
er
m
co
m
co
m
m
an
ds
/
co
llis
io
ns
e
teleoperated
t im
Performance comparison:
- 66 data points, 22 teleoperators
- paired sample t-test (conf>95%)
Communications data:
-36 data points, 6 teleoperators
80
70
60
50
40
30
20
10
0
Teleoperators did better only at 1,3 where the robot wasn’t
supposed to be able to dock from. Noticed that teleoperators
used a different strategy; opportunity for improvement
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
22
5
Docking Vision
• Spherical Coordinate Transform space instead of
HSV, RGB
a color is a
circle on the plane
• Biomimetic vision: gradient, looming
• O(m x n) lighting insensitive color segmentation
• 8-10 frames/sec on commercial hardware vs. 30
frames/sec for Cognachrome hardware
• Robust algorithm
– 2-colored landmark to prevent confusion
– imprinting and time of day look up tables (LUT)
– if time-out, mother moves
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
23
Light insensitive color
segmentation
5
LUT
(time of day,
weather)
Imprint
Initial
values
>15 tries
Extract
regions
Perform
connected
components
Compute
region
statistics
Adapt
new values for region
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
24
5
Indoor Data Collection
and Demonstrations
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
25
5
Outdoor Demonstrations
Imprint at dawn (light mist), return 6 hours later
As expected, mediocre performance
from dusk to night (~50%) due to
headlight reflection
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
26
5
Additional Case Studies:
Commercial Products
• Robomow
– cutting grass in residential areas
• My Real Baby
– toy dolls
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
27
5
Overview
History
Reactive
USAR
Summary
Robomow
• Behaviors?
• Random
• Avoid
– Avoid(bump=obstacle)
– Avoid(wire=boundary)
• Stop
– Stop(tilt=ON)
• All active
Introduction to AI Robotics (MIT Press)
www.friendlymachines.com
Chapter 5: Designing a Reactive Implementation
28
5
Overview
History
Reactive
USAR
Summary
My Real Baby
•
•
•
•
•
Behaviors?
Touch-> Awake
Upside down & Awake-> Cry
Awake & Hungry -> Cry
Awake & Lonely -> Cry
www.irobot.com
• Note can get crying from multiple behaviors
• Note internal state (countdown timer on Lonely)
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
29
5
Commercial Case Studies
• Purely reactive
• May not need subsumption or pfields, very
straightforward
• State of practice is much less complicated than state of
art!
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
30
5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Design Tool: Behavior Table
An agent is attracted to light. If it sees light, it heads in that direction.
If it encounters an obstacle, it turns either left or right, favoring the
direction of the light. If there is no light, it sits and waits. But if an
obstacle appears, the agent runs away.
1. photropism
2. Obstacle avoidance
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
31
5
Behavior Table
An agent is attracted to light. If it sees light, it heads in that direction.
If it encounters an obstacle, it turns either left or right, favoring the
direction of the light. If there is no light, it sits and waits. But if an
obstacle appears, the agent runs away.
Design
-Beh. Table
-Steps
Case Study Releaser
Coordination
-FSA
-Scripts
Light
Summary
Range
<tasked
level>
Behavior
Motor
Schema
Percept
Perceptual
Schema
phototropism move2Light() Light:
:Attraction
direction &
strength
Brightest(di
r), atLight()
Obstacle
avoidance
Obstacle()
Introduction to AI Robotics (MIT Press)
avoid(): turn
left or right;
runaway()
proximity
Chapter 5: Designing a Reactive Implementation
32
5
Robomow
Releaser
Behavior
Motor
Schema
Percept
Perceptual
Schema
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
33
5
My Real Baby
Releaser
Behavior
Motor
Schema
Percept
Perceptual
Schema
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
34
5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Assemblages of Behaviors
• What to do if have a SEQUENCE of behaviors as well
as CONCURRENCY?
• Two equivalent methods
– Finite state automata (FSA)
– Scripts
– (other ways too)
• Two approaches:
– Stuff the coordination mechanism into a separate controlling
program (like a main())
• Hurts portability, adding new behaviors “on top”
– Stuff the coordination mechanism into a meta-behavior or
abstract behavior using recursive-ness of schemas
• Coordination mechanism is the coordinated control program part
of the behavioral schema
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
35
5
Example of a Sequence:
Catch Suzy!
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
36
5
Example Continued
• “Tracking Phase”
– move to goal
– avoid obstacle
• “Pick up Phase”
– fine position
– pick up
same behaviors,
just DIFFERENT
INSTANTIATION OF
GOAL
• “Return Home Phase”
– move to goal
– avoid obstacle
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
37
5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
FSA: M={K,S,d,s,F}
• K: all the states, each is “q”- behaviors
 d: transition function, d(q,s)= new behavior
 S: inputs that agent can “see”, each is s–
stimulus/affordances
• q0: Start state(s)- part of K
• F: Terminating state(s)- part of K
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
38
5
Class Exercise:
Catch Suzy
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
39
5
Introduction to AI Robotics (MIT Press)
Class Exercise:
Pick Up Trash
Chapter 5: Designing a Reactive Implementation
40
5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
FSA Summary
• “State” doesn’t mean “state of world” (bad); it means
more “where the innate releasing mechanism is
currently at” (good)
• Advantages
– Formal mechanism
– Have to fill in the table, so a way of spotting unforseen effects
• Disadvantages
– Hard to keep up with implicit behaviors
• Ex. Avoid obstacle is often running throughout ALL states, gets
tedious to express it formally
– Tend to add explicit variable for transitions, rather than rely on
emergent behavior from environment
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
41
5
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
Scripts
• UGV competition really didn’t have a sequence of
behaviors, just toggling back and forth
• USAR victim detection has more of a typical sequence
or order of behaviors (like digger wasps mating)
• Imagine trying to do an FSA for the USAR task
• Scripts are equivalent to FSA but may be more natural
or readable for sequences
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
42
5
Scripts
Script
Behavior Analog
Examples
Goal
Task
Find victims in rubble
Environment,
applicability or
“taskability” for new
tasks
Collapsed buildings
Behaviors
explore(), dance(), avoid(),
crawl, move2void, move2victim
Props, cues
Percepts
Voids: Dark, concave
Victims: heat, motion, color
Causal
Chain
Sequence of behavior
Explore, dance, move2void,
crawl, move2victim, dropRadio
Subscripts
Exception handling
If lose communications, return
home
Design
-Beh. Table Places
-Steps
Case Study
Coordination
-FSA
-Scripts
Actors
Summary
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
43
5
Scripts Summary
• Will see more of it in Ch10: Topological Navigation
• Advantages
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
– A more storyboard like way of thinking about the behaviors
– If-then, switch style of programming like FSA
– Since a Script is “in” a behavior, other behaviors such as avoid
can be running concurrently without having to appear “in” the
script
– Exception handling is a big plus in Real Life
• Disadvantages
– Can be a bit of overkill for simple sequences, especially with
C++
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
44
5
Summary
• Design of reactive systems is identical to design of
object-oriented software systems
Design
-Beh. Table
-Steps
Case Study
Coordination
-FSA
-Scripts
Summary
– Highly modular, can test behaviors independentl
• Follows the basic steps in the Waterfall Lifecycle
– Describe task, robot, environment, how robot should act, refine
behaviors, test independently, test together.
– Except lots more iteration, making it more like Spiral
• Behavior tables can help keep track of what’s a
behavior and its releasers and percepts
• Sequences of behaviors, rather than combinations, can
be controlled by a separate routine or by adding a
routine to the coordinated control program in the
behavioral schema
– FSA and Scripts are two main methods
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
45
5
Thought Question
• Should Moore’s Law factor into reactive design? If had
more processor speed, should a different approach been
used for the UGV competition?
Introduction to AI Robotics (MIT Press)
Chapter 5: Designing a Reactive Implementation
46