Designing a Reactive Implementation - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Designing a Reactive Implementation

Description:

Steps in Designing a Reactive Behavioral System CSM 1994 UGV Competition Fully autonomous vehicle, all on-board, navigate a course 10ft wide, ... – PowerPoint PPT presentation

Number of Views:112
Avg rating:3.0/5.0
Slides: 41
Provided by: Robin164
Category:

less

Transcript and Presenter's Notes

Title: Designing a Reactive Implementation


1
Designing a Reactive Implementation
  • List the steps involved in designing a reactive
    behavioral system.
  • Use schema theory to program behaviors using
    object-oriented 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.

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
2
Steps in Designing a Reactive Behavioral System
Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
3
CSM 1994 UGV Competition
(this is from 1996, but its 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

4
1-3. Describe the Task, Robot, Environment
Camcorder on a Panning mast, going to A
framegrabber
33MHz 486 PC running Lynx (commercial unix)
Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
Sonar on a panning mast
  • Have to use computer vision black white, slow
    processor speeds (didnt 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

5
4. Describe how robot should act
  • Follow the line and stay in the middle
  • Follow-line
  • Only need the Camcorder!

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
6
5-6 Refine and test each behavior
  • Follow-line
  • Worked with toilet paper (indoors),
  • Worked with athletic line tape (outdoor)

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
7
7 Test with other behaviors
  • Full dress rehearsal
  • 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, its a bale, so go straight

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
8
Final System
  • Round 1
  • 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!

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
9
Main Points
  • Let the WORLD BE ITS OWN BEST REPRESENTATION and
    CONTROL STRUCTURE
  • line wasnt 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
10
Other Lessons Learned
  • Dont count on getting much work done in the
    field!

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
A river runs through it
11
Case Study and Field TripPolar Robotics
  • Existing robots
  • DANTE, DANTE II
  • Nomad

12
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

13
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

14
Nomad
  • Task
  • search for and analyze meteorities
  • Environment
  • Antarctica
  • Robot
  • hybrid mobility, LADAR, omnivision, sample
    sensors
  • Behaviors
  • search an area using GPS, avoid obstacles, stop
    at possible meteorities and alert user. Can be
    controlled by human
  • Refine and Test
  • Test with other behaviors
  • 1999
  • 2000 success

15
Nomad Omnivision
16
Hyperion (really about Mars)
  • Task
  • navigate Arctic
  • Environment
  • Arctic
  • Robot
  • wheeled, uses solar
  • Behaviors
  • Refine and test
  • Test with other behaviors
  • 2002 success

17
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

18
Case Study in PfieldsDocking
  • Needed for marsupial robots
  • Note
  • use of reactivity
  • simple perception
  • pfields
  • improvement over human

19
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
20
Docking Behavior Results
  • 48 data points (3 per 16 stations) on time to
    completion
  • 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
21
Docking Behavior Results teleoperation
17 faster
Performance comparison - 66 data points, 22
teleoperators - paired sample t-test
(confgt95) Communications data -36 data points,
6 teleoperators
Teleoperators did better only at 1,3 where the
robot wasnt supposed to be able to dock from.
Noticed that teleoperators used a different
strategy opportunity for improvement
22
Docking Vision
  • Spherical Coordinate Transform space instead of
    HSV, RGB
  • 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

a color is a circle on the plane
23
Light insensitive color segmentation
LUT (time of day, weather)
gt15 tries
Compute region statistics
Perform connected components
Initial values
Extract regions
Imprint
Adapt
new values for region
24
Indoor Data Collection and Demonstrations
25
Outdoor Demonstrations
Imprint at dawn (light mist), return 6 hours later
As expected, mediocre performance from dusk to
night (50) due to headlight reflection
26
Additional Case StudiesCommercial Products
  • Robomow
  • cutting grass in residential areas
  • My Real Baby
  • toy dolls

27
Robomow
  • Behaviors?
  • Random
  • Avoid
  • Avoid(bumpobstacle)
  • Avoid(wireboundary)
  • Stop
  • Stop(tiltON)
  • All active

Overview History Reactive USAR Summary
28
My Real Baby
  • Behaviors?
  • Touch-gt Awake
  • Upside down Awake-gt Cry
  • Awake Hungry -gt Cry
  • Awake Lonely -gt Cry
  • Note can get crying from multiple behaviors
  • Note internal state (countdown timer on Lonely)

Overview History Reactive USAR Summary
29
Commercial Case Studies
  • Purely reactive
  • May not need subsumption or pfields, very
    straightforward
  • State of practice is much less complicated than
    state of the art!

30
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.
Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
31
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 Coordination
-FSA -Scripts Summary
Releaser Behavior Motor Schema Percept Perceptual Schema
Light phototropism move2Light()Attraction Light direction strength Brightest(dir), atLight()
Range lttasked levelgt Obstacle avoidance avoid() turn left or right runaway() proximity Obstacle()
32
Assemblages of Behaviors
  • What to do if you 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
33
Example of a SequenceCatch Suzy!
34
Example Continued
  • Tracking Phase
  • move to goal
  • avoid obstacle
  • Pick up Phase
  • fine position
  • pick up
  • Return Home Phase
  • move to goal
  • avoid obstacle

same behaviors, just DIFFERENT INSTANTIATION OF
GOAL
35
FSA MK,S,d,s,F
Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
  • 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

36
FSA Summary
  • State doesnt mean state of world (bad) it
    means more where the innate releasing mechanism
    is currently at
  • 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
37
Scripts
  • UGV competition really didnt 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
38
Scripts
Script Behavior Analog Examples
Goal Task Find victims in rubble
Places Environment, applicability or taskability for new tasks Collapsed buildings
Actors 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 -Steps Case Study Coordination
-FSA -Scripts Summary
39
Scripts Summary
  • Advantages
  • 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
40
Summary
  • Design of reactive systems is similar to design
    of object-oriented software systems
  • Highly modular, can test behaviors independently
  • 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 whats 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

Design -Beh. Table -Steps Case Study Coordination
-FSA -Scripts Summary
Write a Comment
User Comments (0)
About PowerShow.com