Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu.

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Elephants Don’t Play Chess
Signals and Systems March 25, Summary thus far: software engineering Focused on abstraction and modularity in software engineering. Topics: procedures,
Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
Timed Automata.
MICHAEL MILFORD, DAVID PRASSER, AND GORDON WYETH FOLAMI ALAMUDUN GRADUATE STUDENT COMPUTER SCIENCE & ENGINEERING TEXAS A&M UNIVERSITY RatSLAM on the Edge:
Embedded System Lab Kim Jong Hwi Chonbuk National University Introduction to Intelligent Robots.
AuRA: Principles and Practice in Review
1 Complexity of Network Synchronization Raeda Naamnieh.
ECE 7340: Building Intelligent Robots QUALITATIVE NAVIGATION FOR MOBILE ROBOTS Tod S. Levitt Daryl T. Lawton Presented by: Aniket Samant.
Autonomous Mobile Robots CPE 470/670 Lecture 11 Instructor: Monica Nicolescu.
Topics: Introduction to Robotics CS 491/691(X) Lecture 10 Instructor: Monica Nicolescu.
ECE 4340/7340 Exam #2 Review Winter Sensing and Perception CMUcam and image representation (RGB, YUV) Percept; logical sensors Logical redundancy.
Model Checking. Used in studying behaviors of reactive systems Typically involves three steps: Create a finite state model (FSM) of the system design.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
Topics: Introduction to Robotics CS 491/691(X) Lecture 11 Instructor: Monica Nicolescu.
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
Autonomous Mobile Robots CPE 470/670 Lecture 11 Instructor: Monica Nicolescu.
Behavior Coordination Mechanisms – State-of-the- Art Paper by: Paolo Pirjanian (USC) Presented by: Chris Martin.
Motor Schema - Based Mobile Robot Navigation System - Ronald C. Arkin.
Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Motor Schema Based Navigation for a Mobile Robot: An Approach to Programming by Behavior Ronald C. Arkin Reviewed By: Chris Miles.
Topics: Introduction to Robotics CS 491/691(X) Lecture 8 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 9 Instructor: Monica Nicolescu.
Integration of Representation Into Goal- Driven Behavior-Based Robots By Dr. Maja J. Mataric` Presented by Andy Klempau.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Topics: Introduction to Robotics CS 491/691(X)
Behavior- Based Approaches Behavior- Based Approaches.
A Robust Layered Control System for a Mobile Robot Rodney A. Brooks Presenter: Michael Vidal.
Autonomous Mobile Robots CPE 470/670 Lecture 9 Instructor: Monica Nicolescu.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Robotica Lezione 1. Robotica - Lecture 12 Objectives - I General aspects of robotics –Situated Agents –Autonomous Vehicles –Dynamical Agents Implementing.
Introduction to Behavior- Based Robotics Based on the book Behavior- Based Robotics by Ronald C. Arkin.
Autonomous Mobile Robots CPE 470/670 Lecture 9 Instructor: Monica Nicolescu.
Artificial Intelligence Chapter 2 Stimulus-Response Agents
DARPA Mobile Autonomous Robot SoftwareLeslie Pack Kaelbling; March Adaptive Intelligent Mobile Robotics Leslie Pack Kaelbling Artificial Intelligence.
Robotica Lecture 3. 2 Robot Control Robot control is the mean by which the sensing and action of a robot are coordinated The infinitely many possible.
4 Introduction to AI Robotics (MIT Press)Chapter 4: The Reactive Paradigm1 The Reactive Paradigm Describe the Reactive Paradigm in terms of the 3 robot.
Lecture #12 Distributed Algorithms (I) CS492 Special Topics in Computer Science: Distributed Algorithms and Systems.
Behavior Based Systems Behavior Based Systems Lezione 6.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Robotica Lecture 3. 2 Robot Control Robot control is the mean by which the sensing and action of a robot are coordinated The infinitely many possible.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Electrical Engineering Design Project - Fall 2002 Electrical/Computer Engineering Design Project Fall 2002 Lecture 4 – Robotics.
Roma, Meeting Mindraces 2-3 October 2006 ISTC-CNR Achievements MindRACES: From Reactive to Anticipatory Cognitive Embodied Systems (FP )
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Intelligent Robotics Today: Robot Control Architectures Next Week: Localization Reading: Murphy Sections 2.1, 2.3, 2.5, 3.1, 3.5, 3.6, 4.1 – 4.3, 4.5,
Robotica Lecture Review Reactive control Complete control space Action selection The subsumption architecture –Vertical vs. horizontal decomposition.
Introduction of Intelligent Agents
Behavior-based Multirobot Architectures. Why Behavior Based Control for Multi-Robot Teams? Multi-Robot control naturally grew out of single robot control.
4 Introduction to AI Robotics (MIT Press)Chapter 4: The Reactive Paradigm1 The Reactive Paradigm Describe the Reactive Paradigm in terms of the 3 robot.
Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu.
ROBOTICS COE 584 Robotic Control Architecture.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Intelligent Agents Chapter 2. How do you design an intelligent agent? Definition: An intelligent agent perceives its environment via sensors and acts.
Robotic Architectures Lezione 8. Robotic architecture Computer architecture: Computer architecture:  discipline devoted to the design of highly specific.
Robotic Architectures: Schema Lecture 7a. Motor Schemas ● Based upon schema theory: Explains motor behavior in terms of concurrent control of many different.
EA C461 – Artificial Intelligence Logical Agent
Build Intelligence from the bottom up!
Build Intelligence from the bottom up!
Intelligent Agents Chapter 2.
Trends in Robotics Research
Artificial Intelligence Chapter 2 Stimulus-Response Agents
Build Intelligence from the bottom up!
Subsuption Architecture
Robot Intelligence Kevin Warwick.
Behavior Based Systems
Presentation transcript:

Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu

CPE 470/670 - Lecture 102 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

CPE 470/670 - Lecture 103 What Is a Behavior? Behavior-achieving modules Rules of implementation Behaviors achieve or maintain particular goals (homing, wall-following) Behaviors are time-extended processes Behaviors take inputs from sensors and from other behaviors and send outputs to actuators and other behaviors Behaviors are more complex than actions (stop, turn- right vs. follow-target, hide-from-light, find-mate etc.)

CPE 470/670 - Lecture 104 Principles of BBC Design Behaviors are executed in parallel, concurrently –Ability to react in real-time Networks of behaviors can store state (history), construct world models/representation and look into the future –Use representations to generate efficient behavior Behaviors operate on compatible time-scales –Ability to use a uniform structure and representation throughout the system

CPE 470/670 - Lecture 105 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

CPE 470/670 - Lecture 106 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)

CPE 470/670 - Lecture 107 Toto’s Controller

CPE 470/670 - Lecture 108 Landmark Detection Keep track of what was sensed and how it was moving –meandering  cluttered area –constant compass direction, go straight  left, right walls –moving straight, both walls  corridor

CPE 470/670 - Lecture 109 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

CPE 470/670 - Lecture 1010 Toto’s Mapping Behaviors 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

CPE 470/670 - Lecture 1011 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

CPE 470/670 - Lecture 1012 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

CPE 470/670 - Lecture 1013 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

CPE 470/670 - Lecture 1014 Toto - Video

CPE 470/670 - Lecture 1015 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

CPE 470/670 - Lecture 1016 Stimulus-Response Diagrams Behaviors are represented as a general response to a particular stimulus move-to-class avoid-object dodge-student stay-right defer-to-elder COORDINATORCOORDINATOR class location detected object detected student detected path detected elder Actions

CPE 470/670 - Lecture 1017 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 –q 0 : initial state –F: set of accepting (final) states StartJourney Lost At-class move error reached-class othernot-at-classall

CPE 470/670 - Lecture 1018 Formal Methods Have very useful properties for the programmer –Can be used to verify designer intentions –Provide a framework for formal analysis of the program, adequacy and completeness –Facilitate the automatic generation of control systems –Provide a common language for expressing robot behaviors –Provide support for high-level programming language design

CPE 470/670 - Lecture 1019 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

CPE 470/670 - Lecture 1020 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) )

CPE 470/670 - Lecture 1021 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) ( defbehavior name & inputs outputs declarations processes)

CPE 470/670 - Lecture 1022 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

CPE 470/670 - Lecture 1023 Potential Fields Ballistic goal attraction field Superposition of two fields

CPE 470/670 - Lecture 1024 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!

CPE 470/670 - Lecture 1025 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

CPE 470/670 - Lecture 1026 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

CPE 470/670 - Lecture 1027 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

CPE 470/670 - Lecture 1028 Examples of Schemas Obstacle avoid and stay on corridor schemas

CPE 470/670 - Lecture 1029 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:

CPE 470/670 - Lecture 1030 The Role of Gains in Schemas Low gain High gain

CPE 470/670 - Lecture 1031 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

CPE 470/670 - Lecture 1032 Foraging Example

CPE 470/670 - Lecture 1033 Strengths and Weaknesses Strengths: – support for parallelism – run-time flexibility – timeliness for development – support for modularity Weaknesses: –hardware retargetability –combination pitfalls (local minima, oscillations)

CPE 470/670 - Lecture 1034 Schema-Based Robots At Georgia Tech (Ron Arkin) Exploration Hall following Wall following Impatient waiting Navigation Docking Escape Forage

CPE 470/670 - Lecture 1035 Readings M. Matarić: Chapters 16