470 likes | 669 Views
The Reactive Paradigm. Describe the Reactive Paradigm in terms of the 3 robot primitives and its organization of sensing List the characteristics of a reactive robotic system, and discuss the connotations of surrounding the reactive paradigm
E N D
The Reactive Paradigm • Describe the Reactive Paradigm in terms of the 3 robot primitives and its organization of sensing • List the characteristics of a reactive robotic system, and discuss the connotations of surrounding the reactive paradigm • Describe the two dominant methods for combining behaviors in a reactive architecture: subsumption and potential field summation • Be able to program a behavior using pfields • Be able to construct a new potential field from primitive pfields and sum pfields to generate an emergent behavior Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
Review: Lessons from Biology • Programs should decompose complex actions into behaviors. Complexity emerges from concurrent behaviors acting independently • Agents should rely on straightforward activation mechanisms such as IRM • Perception filters sensing and considers only what is relevant to the task (action-oriented perception) • Behaviors are independent but the output may be used in many ways including: combined with others to produce a resultant output or to inhibit others Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
Hierarchical Organization is“Horizontal” Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
More Biological is “Vertical” Higher level behaviors reuse or inhibit more primitive behaviors Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
Behaviors can “share” perception without knowing it This is behavioral sensor fusion Sensing is Behavior-Specific or Local Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
Reactive Robots • Most apps are programmed with this paradigm • Biologically based: • Behaviors (independent processes), released by perceptual or internal events (state) • No world models or long term memory • Highly modular, generic • Overall behavior emerges RELEASER behavior SENSE ACT Overview History Reactive USAR Summary Chapter 4: The Reactive Paradigm
www.friendlymachines.com Example 1: Robomow • Behaviors? • Random • Avoid • Avoid(bump=obstacle) • Avoid(wire=boundary) • Stop • Stop(tilt=ON) • All active Overview History Reactive USAR Summary Chapter 4: The Reactive Paradigm
www.irobot.com Example 2: My Real Baby • Behaviors? • Touch-> Awake • Upside down & Awake-> Cry • Awake & Hungry -> Cry • Awake & Lonely -> Cry • Note can get crying from multiple behaviors • Note internal state (countdown timer on Lonely) Overview History Reactive USAR Summary Chapter 4: The Reactive Paradigm
Reactive Behaviors • Connotations • Execute rapidly • Can be implemented in hardware • Have no memory • Characteristics of reactive architectures • Robots are situated agents operating in an ecological niche • Behaviors are basic building blocks for robotic actions, and overall behavior of robot emerges from their interaction • Independent, concurrent • Schema of a behavior may have a coordinated control program, but there is no external controller of all behaviors for a task • Architecture may use combination, suppression, or cancellation for interaction • Only local, behavior-specific sensing in permitted • No world model, representation from sensing is ego-centric • Modular • Tasks are broken down into behaviors; behaviors can be tested independently; new behaviors can be built from more primitive ones • Based on animal models of behavior Chapter 4: The Reactive Paradigm
Reactive • Historically, there are two main styles of creating a reactive system • Subsumption architecture • Layers of behavioral competence • How to control relationships • Potential fields • Concurrent behaviors • How to navigate • They are equivalent in power • In practice, see a mixture of both layers and concurrency Chapter 4: The Reactive Paradigm
Subsumption:Rodney Brooks Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary From http://www.spe.sony.com/classics/fastcheap/index.html Chapter 4: The Reactive Paradigm
Subsumption Philosophy • Modules should be grouped into layers of competence • Modules in a higher lever can override or subsume behaviors in the next lower level • Suppression: substitute input going to a module • Inhibit: turn off output from a module • No internal state in the sense of a local, persistent representation similar to a world model. • Architecture should be taskable: accomplished by a higher level turning on/off lower layers Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
follow-corridor 2 wander 1 runaway 0 RUN AWAY PS MS PS MS HALT COLLIDE Level 0: runaway when obstacle comes near turn around, run away; when collision imminent, stop, turn around, run away direction magnitude Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary sensors behaviors motor actions Chapter 4: The Reactive Paradigm
Example Perception: Polar Plot • Plot is ego-centric • Plot is distributed (available to whatever wants to use it) • Although it is a representation in the sense of being a data structure, there is no memory (contains latest information) and no reasoning (2-3 means a “wall”) Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary if sensing is ego-centric, can often eliminate need for memory, representation Chapter 4: The Reactive Paradigm
follow-corridor 2 wander 1 runaway 0 WANDER AVOID PS MS MS encoders What would Inhibition do? PS Note sharing of Perception, fusion Level 1: Wander Avoid suppresses (replaces)output from runaway Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
move2light 2 wander 1 runaway 0 LIGHT PHOTO- TROPHISM S Class Exercise Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
follow-corridor 2 wander 1 runaway 0 STAY-IN-MIDDLE PS MS Level 2: Follow-Corridors Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Computed from shaft encoders Intended course Chapter 4: The Reactive Paradigm
Class Exercise • Design the roomba with subsumption Chapter 4: The Reactive Paradigm
Subsumption Review • What is the Reactive Paradigm in terms of primitives? • Sense, act • What is the Reactive Paradigm in terms of sensing? • Local to each behavior • Does the Reactive Paradigm solve the Open World problem? • Open world is non-monotonic; need truth maintenance mechanism • Reactive paradigm has no memory, no truth maintenance • How does the Reactive Paradigm eliminate the frame problem? • No world model, so no frame problem • What is the difference between a behavior and a level of competence? • Not schema theoretic; level of competence groups schema-like modules into abstract behaviors • What is the difference between suppression and inhibition in subsumption? • Suppression acts like a gate; inhibition like on/off switch Review Organization -SA -beh. specific Subsumption -Philosophy -Level 0 -Level 1 -Level 2 Summary Chapter 4: The Reactive Paradigm
Potential Fields:Ron Arkin From http://www.cc.gatech.edu/aimosaic/faculty/arkin From http://www.cc.gatech.edu/aimosaic/robot-lab/MRLhome.html Chapter 4: The Reactive Paradigm
Potential Fields Philosophy • The motor schema component of a behavior can be expressed with a potential fields methodology • A potential field can be a “primitive” or constructed from primitives which are summed together • The output of behaviors are combined using vector summation • From each behavior, the robot “feels” a vector or force • Magnitude = force, strength of stimulus, or velocity • Direction • But we visualize the “force” as a field, where every point in space represents the vector that it would feel if it were at that point Chapter 4: The Reactive Paradigm
Example: Run Away via Repulsion Chapter 4: The Reactive Paradigm
5 Primitive Potential Fields perpendicular uniform tangential Chapter 4: The Reactive Paradigm
Draw These Now!Common fields in behaviors • Uniform • Move in a particular direction, corridor following • Repulsion • Runaway (obstacle avoidance) • Attraction • Move to goal • Perpendicular • Corridor following • Tangential • Move through door, docking (in combination with other fields) • random • do you think this is a potential field? what would it look like? Chapter 4: The Reactive Paradigm
Attractive Repulsive Class Exercise • Name the field you’d use for • Moving towards a light • Avoiding obstacles Chapter 4: The Reactive Paradigm
Magnitude profiles • Constant magnitude • Linear drop off • Exponential drop off • P. 127 Chapter 4: The Reactive Paradigm
Programming a potential field Example: repulsive field with linear dropoff, only one sensor • Vdirection = -180 degrees • Vmagnitude = (D-d)/D if d <= D where D is range of potential field 0 otherwise (magnitude controls velocity) Implementation in C on p. 129-130 With more than one sensor – fig. =4.18, p. 134 - 136 Chapter 4: The Reactive Paradigm
Problems • Impact of update rates • if time between updates is too long • Path can be jerky • Can overshoot • Robots can’t change velocity and direction immediately • Fields may sum to 0 Chapter 4: The Reactive Paradigm
goal goal obstacle obstacle Combining Fields forEmergent Behavior obstacle If robot were dropped anywhere on this grid, it would want to move to goal and avoid obstacle: Behavior 1: MOVE2GOAL Behavior 2: RUNAWAY The output of each independent behavior is a vector, the 2 vectors is summed to produce emergent behavior Chapter 4: The Reactive Paradigm
Note: in this example, robot can sense the goal from 10 meters away Note: In this example, repulsive field only extends for 2 meters; the robot runs away only if obstacle within 2 meters Fields and Their Combination Chapter 4: The Reactive Paradigm
Path Taken Robot only feels vectors for this point when it (if) reaches that point • If robot started at this location, it would take the following path • It would only “feel”the vector for the location, then move accordingly, “feel” the next vector, move, etc. • Pfield visualization allows us to see the vectors at all points, but robot never computes the “field of vectors” just the local vector Chapter 4: The Reactive Paradigm
Discussion • Could you represent the Arctic Tern feeding behavior with potential fields? • what happens with multiple red dots? • can you inhibit with potential fields? Chapter 4: The Reactive Paradigm
Example: follow-corridor or follow-sidewalk Perpendicular Uniform Note use of Magnitude profiles: Perpendicular decreases Combined Chapter 4: The Reactive Paradigm
Just half of a follow-corridor, but… Class Exercise:Draw Fields for Wall-Following(assume that robot stands still if no wall) Chapter 4: The Reactive Paradigm
But how does the robot see a wall without reasoning or intermediate representations? • Perceptual schema “connects the dots”, returns relative orientation MS: Perp. orientation PS: Find-wall S MS: Uniform Sonars Chapter 4: The Reactive Paradigm
OK, But why isn’t that a representation of a wall? • It’s not really reasoning that it’s a wall, rather it is reacting to the stimulus which happens to be smoothed (common in neighboring neurons) Chapter 4: The Reactive Paradigm
Note: multiple instances of a behavior vs. 1: Could just have 1 Instance of RUN AWAY, Which picks nearest reading; Doesn’t matter, but this Allows addition of another Sonar without changing the RUN AWAY behavior Level 0: Runaway Chapter 4: The Reactive Paradigm
Level 1: Wander Wander is Uniform, but Changes direction aperiodically Chapter 4: The Reactive Paradigm
Level 2: Follow Corridor Follow-corridor Should we Leave Run Away In? Do we Need it? Chapter 4: The Reactive Paradigm
Pfields • Advantages • Easy to visualize • Easy to build up software libraries • Fields can be parameterized • Combination mechanism is fixed, tweaked with gains • Disadvantages • Local minima problem (sum to magnitude=0) • Jerky motion Chapter 4: The Reactive Paradigm
Orientation, ratio of pixel countstangent vector Total countattraction vector • Arkin and Murphy, 1990, Questa, Grossmann, Sandini, 1995, Tse and Luo, 1998, Vandorpe, Xu, Van Brussel, 1995. Roth, Schilling, 1998, Santos-Victor, Sandini, 1997 Example: Docking Behavior Selective attraction field , width of +-45 degrees Chapter 4: The Reactive Paradigm
Docking Behavior Video Chapter 4: The Reactive Paradigm
Class Discussion:When Does a Field End? • Imagine the case of a “SodaPup” robot (MIT) • task: find and pick up a Coca-Cola can • environment: red cans are only red object in world Chapter 4: The Reactive Paradigm
Pfield advantages • Easy to visualize • Easy to combine • Can be parameterized (different ranges, drop off, etc.) Chapter 4: The Reactive Paradigm
disadvantages • Local minima • Solutions: • Add noise • Navigation templates • Express potential fields as harmonic functions – no local minima of 0, but computationally expensive Chapter 4: The Reactive Paradigm
Pfields Summary • Reactive Paradigm: SA, sensing is local • Solves the Open World problem by emulating biology • Eliminates the frame problem by not using any global or persistent representation • Perception is direct, ego-centric, and distributed • Two architectural styles are: subsumption and pfields • Behaviors in pfield methodologies are a tight coupling of sensing to acting; modules are mapped to schemas conceptually • Potential fields and subsumption are logically equivalent but different implementations • Pfield problems include • local minima (ways around this) • jerky motion • bit of an art Chapter 4: The Reactive Paradigm