1 / 40

Topics: Introduction to Robotics CS 491/691(X)

Topics: Introduction to Robotics CS 491/691(X). Lecture 10 Instructor: Monica Nicolescu. Review. The Subsumption Architecture Herbert, Genghis, The Nerd Herd, Tom and Jerry Advantages and dissadvantages Behavior-based control Definitions Principles of behavior-based control

aderrick
Download Presentation

Topics: Introduction to Robotics CS 491/691(X)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Topics: Introduction to RoboticsCS 491/691(X) Lecture 10 Instructor: Monica Nicolescu

  2. Review • The Subsumption Architecture • Herbert, Genghis, The Nerd Herd, Tom and Jerry • Advantages and dissadvantages • Behavior-based control • Definitions • Principles of behavior-based control • Toto: a behavior-based mapping robot CS 491/691(X) - Lecture 10

  3. An Example Task: Mapping • Design a robot that is capable of: • Moving around safely • Make a map of the environment • Use the map to find the shortest paths to particular places • Navigation & mapping are the most common mobile robot tasks CS 491/691(X) - Lecture 10

  4. Map Representation • The map is distributed over different behaviors • We connect parts of the map that are adjacent in the environment by connecting the behaviors that represent them • The network of behaviors represents a network of locations in the environment • Topological map: Toto (Matarić ’90) CS 491/691(X) - Lecture 10

  5. Toto’s Controller CS 491/691(X) - Lecture 10

  6. Building a Map • Each landmark was stored in a behavior • Whenever a new landmark was discovered a new behavior was added • Adjacent landmarks are connected by communication wires • This resulted in a topological representation of the environment, i.e., a topological world model CS 491/691(X) - Lecture 10

  7. Each landmark was stored in a behavior Each such landmark behavior stored (remembered) some information landmark type (wall, corridor, irregular) compass heading approximate length/size some odometry my-behavior-type: corridor my-compass-direction: NV my-approximate-location: x,y my-approximate-length: length whenever received (input) if input(behavior-type)= my-behavior-type and input (compass-direction) = my-compass-direction then active <- true Toto’s Mapping Behaviors CS 491/691(X) - Lecture 10

  8. Localization • Whenever a landmark is detected, its description (type, compass direction, etc.) is sent to all behaviors in parallel  the one that matches becomes active • When nothing in the map matches  a new place/landmark was discovered and added to the map • If an existing behavior was activated, it inhibited any other active behaviors CS 491/691(X) - Lecture 10

  9. Getting Around • Toto can use the map to navigate • The behavior that corresponds to the goal sends messages (spreads activation) to all of its neighbors • The neighbors send messages to their neighbors in turn • So on, until the messages reach the currently active behavior • This forms path(s) from the current state to the goal CS 491/691(X) - Lecture 10

  10. Path Following • Toto did not keep a sequence of behaviors • Instead, messages were passed continuously • Useful in changing environments • How does Toto decide where to go if multiple choices are available? • Rely on the landmark size: behaviors add up their own length as messages are passed from one behavior to another  give path length • Choose the shortest path • Thus, one behavior at a time, it reached the goal CS 491/691(X) - Lecture 10

  11. Toto - Video CS 491/691(X) - Lecture 10

  12. Expression of Behaviors • Example: • Going from a classroom to another • What does it involve? • Getting to the destination from the current location • Not bumping into obstacles along the way • Making your way around students on corridors • Deferring to elders • Coping with change in the environment CS 491/691(X) - Lecture 10

  13. Stimulus-Response Diagrams • Behaviors are represented as a general response to a particular stimulus C O O R D I N A T O R move-to-class class location avoid-object detected object dodge-student Actions detected student stay-right detected path defer-to-elder detected elder CS 491/691(X) - Lecture 10

  14. other not-at-class all Start Journey Lost move error reached-class At-class all Finite State Acceptor Diagrams • Useful for describing aggregations and sequences of behaviors • Finite state acceptor: • Q: set of allowable behavioral states • : transition function from (input, current state)  new state • q0: initial state • F: set of accepting (final) states CS 491/691(X) - Lecture 10

  15. Formal Methods • Have very useful properties for the programmer • Can be used to verify designer intentions • Facilitate the automatic generation of control systems • Provide a common language for expressing robot behaviors • Provide a framework for formal analysis of the program, adequacy and completeness • Provide support for high-level programming language design CS 491/691(X) - Lecture 10

  16. Situated Automata • Kaelbling & Rosenschein (’91) • Controllers are designed as logic circuits • Capable of reasoning • REX: Lisp-based language • First language to encode a reactive systems with synchronous digital circuitry • Gapps: goals are specified more directly • Achievement, maintenance, execution • Logical boolean operators are used to create higher-level goals  generate circuits CS 491/691(X) - Lecture 10

  17. Situated Automata (defgoalr (ach in-classroom) (if (not start-up) (maint (and (maint move-to-classroom) (maint avoid-objects) (maint dodge-students) (maint stay-to-right-on-path) (maint defer-to-elders) ) ) ) ) CS 491/691(X) - Lecture 10

  18. Discrete Behavioral Encoding • The behavior consists of a set finite set of (situation, response) pairs • Rule-based systems IF antecedent THEN consequent • Condition-action production rules (Nilsson ’94) • Produce durative actions: “move at 5m/s” vs. “move 5 m” • The Subsumption Architecture (whenever condition & consequent) CS 491/691(X) - Lecture 10

  19. Continuous Behavioral Encoding • Continuous response provides a robot an infinite space of potential reactions to the world • A mathematical function transforms the sensory input into a behavioral reaction • Potential fields • Law of universal gravitation: potential force drops off with the square of the distance between objects • Goals are attractors and obstacles are repulsors • Separate fields are used for each object • Fields are combined (superposition)  unique global field CS 491/691(X) - Lecture 10

  20. Potential Fields Ballistic goal attraction field Superposition of two fields CS 491/691(X) - Lecture 10

  21. Potential Fields • Advantages • Provide an infinite set of possibilities of reaction • Highly parallelizable • Disadvantages • Local minima, cyclic-oscillatory behavior • Apparently, large amount of time required to compute the entire field: reaction is computed only at the robot’s position! CS 491/691(X) - Lecture 10

  22. Motor Schemas • Motor schemas are a type of behavior encoding • Based on neuroscience and cognitive science • They are based on schema theory (Arbib) • Explains motor behavior in terms of the concurrent control of many different activities • Schemas store how to react and the way the reaction can be realized: basic units of activity • Schema theory provides a formal language for connecting action and perception • Activation levels are associated with schemas, and determine their applicability for acting CS 491/691(X) - Lecture 10

  23. Visually Guided Behaviors • Michael Arbib & colleagues constructed computer models of visually guided behaviors in frogs and toads • Toads & frogs respond visually to • Small moving objects  feeding behavior • Large moving objects  fleeing behavior • Behaviors implemented as a vector field (schemas) • Attractive force (vector) along the direction of the fly • What happens when presented with two files simultaneously? • The frog sums up the two vectors and snaps between the two files, missing both of them CS 491/691(X) - Lecture 10

  24. Motor Schemas • Provide large grain modularity • Schemas act concurrently, in a cooperative but competing manner • Schemas are primitives from which more complex behaviors (assemblages can be constructed) • Represented as vector fields CS 491/691(X) - Lecture 10

  25. Examples of Schemas • Obstacle avoid and stay on corridor schemas CS 491/691(X) - Lecture 10

  26. Schema Representation • Responses represented in uniform vector format • Combination through cooperative coordination via vector summation • No predefined schema hierarchy • Arbitration is not used • each behavior has its contribution to the robot’s overall response • gain values control behavioral strengths • Here is how: CS 491/691(X) - Lecture 10

  27. The Role of Gains in Schemas • Low gain • High gain CS 491/691(X) - Lecture 10

  28. Designing with Schemas • Characterize motor behaviors needed • Decompose to most primitive level, use biological guidelines where appropriate • Develop formulas to express reaction • Conduct simple simulations • Determine perceptual needs to satisfy motor schema inputs • Design specific perceptual algorithms • Integrate/test/evaluate/iterate CS 491/691(X) - Lecture 10

  29. Foraging Example CS 491/691(X) - Lecture 10

  30. Strengths and Weaknesses • Strengths: • support for parallelism • run-time flexibility • timeliness for development • support for modularity • Weaknesses: • hardware retargetability • combination pitfalls (local minima, oscillations) CS 491/691(X) - Lecture 10

  31. Schema-Based Robots • At Georgia Tech (Ron Arkin) • Exploration • Hall following • Wall following • Impatient waiting • Navigation • Docking • Escape • Forage CS 491/691(X) - Lecture 10

  32. The DAMN Architecture • Distributed Architecture for Mobile Navigation (Rosenblatt 1995) • Multi-valued behaviors (at all levels) propose multiple action preferences • Each behavior votes for or against sets of actions • Arbiter selects max weighted vote sum • Practically demonstrated on real-world long-distance navigation • Disadvantage: highly heuristic CS 491/691(X) - Lecture 10

  33. Behavior Coordination • Behavior-based systems require consistent coordination between the component behaviors for conflict resolution • Coordination of behaviors can be: • Competitive: one behavior’s output is selected from multiple candidates • Cooperative: blend the output of multiple behaviors • Combination of the above two CS 491/691(X) - Lecture 10

  34. Competitive Coordination • Arbitration: winner-take-all strategy  only one response chosen • Behavioral prioritization • Subsumption Architecture • Action selection/activation spreading (Pattie Maes) • Behaviors actively compete with each other • Each behavior has an activation level driven by the robot’s goals and sensory information • Voting strategies (DAMN) • Behaviors cast votes on potential responses CS 491/691(X) - Lecture 10

  35. Cooperative Coordination • Fusion: concurrently use the output of multiple behaviors • Major difficulty in finding a uniform command representation amenable to fusion • Fuzzy methods • Formal methods • Potential fields • Motor schemas • Dynamical systems CS 491/691(X) - Lecture 10

  36. Emergent Behavior • The resulting robot behavior may sometimes be surprising or unexpected  emergent behavior • Emergence arises from • A robot’s interaction with the environment • The interaction of behaviors CS 491/691(X) - Lecture 10

  37. Wall Following • A simple wall following controller: • If too close on the left, turn right • If too close on the right, turn left • Otherwise, keep straight • If the robot is placed close to a wall it will follow • Is this emergent? • The robot has no explicit representations of walls • The controller does not specify anything explicit about following CS 491/691(X) - Lecture 10

  38. Emergence • A “holistic” property, where the behavior of the robot is greater than the sum of its parts • A property of a collection of interacting components • Often occurs in reactive and behavior-based systems (BBS) • Typically exploited in reactive and BBS design CS 491/691(X) - Lecture 10

  39. Flocking • How would you design a flocking behavior for a group of robots? • Each robot can be programmed with the same behaviors: • Don’t get too close to other robots • Don’t get too far from other robots • Keep moving if you can • When run in parallel these rules will result in the group of robots flocking CS 491/691(X) - Lecture 10

  40. Readings • M. Matarić: Chapters 17, 18 CS 491/691(X) - Lecture 10

More Related