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

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
5-1 Chapter 5: REACTIVE AND HYBRID ARCHITECTURES.
Lecture 4: Command and Behavior Fusion Gal A. Kaminka Introduction to Robots and Multi-Robot Systems Agents in Physical and Virtual Environments.
Jenkins — Modular Perception and Control Brown Computer — ROUGH DRAFT ( ) 1 Workshop Introduction: Modular Perception.
Embedded System Lab Kim Jong Hwi Chonbuk National University Introduction to Intelligent Robots.
Lecture 6: Hybrid Robot Control Gal A. Kaminka Introduction to Robots and Multi-Robot Systems Agents in Physical and Virtual Environments.
CSE 471/598, CBS 598 Intelligent Agents TIP We’re intelligent agents, aren’t we? Fall 2004.
Autonomous Mobile Robots CPE 470/670 Lecture 11 Instructor: Monica Nicolescu.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
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.
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.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Artificial Intelligence
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.
CSE 471/598 Intelligent Agents TIP We’re intelligent agents, aren’t we? Spring 2004.
Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Topics: Introduction to Robotics CS 491/691(X) Lecture 8 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 9 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 10 Instructor: Monica Nicolescu.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Introduction to mobile robots Slides modified from Maja Mataric’s CSCI445, USC.
Topics: Introduction to Robotics CS 491/691(X)
Behavior- Based Approaches Behavior- Based Approaches.
DAMN : A Distributed Architecture for Mobile Navigation Julio K. Rosenblatt Presented By: Chris Miles.
Advanced Topics in Robotics CS493/790 (X) Lecture 2 Instructor: Monica Nicolescu.
The Need of Unmanned Systems
EMBEDDED SOFTWARE Team victorious Team Victorious.
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
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.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Introduction to Robotics In the name of Allah. Introduction to Robotics o Leila Sharif o o Lecture #3: A Brief.
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.
EEL 5937 Agent models. EEL 5937 Multi Agent Systems Lecture 4, Jan 16, 2003 Lotzi Bölöni.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
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 to Artificial Intelligence CS 438 Spring 2008 Today –AIMA, Ch. 25 –Robotics Thursday –Robotics continued Home Work due next Tuesday –Ch. 13:
Instructional Objective  Define an agent  Define an Intelligent agent  Define a Rational agent  Discuss different types of environment  Explain classes.
Behavior-based Multirobot Architectures. Why Behavior Based Control for Multi-Robot Teams? Multi-Robot control naturally grew out of single robot control.
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
CSE 471/598 Intelligent Agents TIP We’re intelligent agents, aren’t we?
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.
Robot Intelligence Technology Lab. Evolutionary Robotics Chapter 3. How to Evolve Robots Chi-Ho Lee.
Robot Control. Open Loop Control Sends commands to make a robot preform some movement without attempting to check if it is doing things properly. For.
Robotic Architectures: Schema Lecture 7a. Motor Schemas ● Based upon schema theory: Explains motor behavior in terms of concurrent control of many different.
Done by Fazlun Satya Saradhi. INTRODUCTION The main concept is to use different types of agent models which would help create a better dynamic and adaptive.
Algorithms and Problem Solving
COGNITIVE APPROACH TO ROBOT SPATIAL MAPPING
CS b659: Intelligent Robotics
Intelligent Agents Chapter 2.
Robot Teams Topics: Teamwork and Its Challenges
Artificial Intelligence Chapter 2 Stimulus-Response Agents
Subsuption Architecture
Chapter 12: Building Situated Robots
Behavior Based Systems
Presentation transcript:

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

CPE 470/670 - Lecture 10 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 10 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 10 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 10 Potential Fields Ballistic goal attraction field Superposition of two fields

CPE 470/670 - Lecture 10 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 10 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 10 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 10 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 10 Examples of Schemas Obstacle avoid and stay on corridor schemas

CPE 470/670 - Lecture 10 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 10 The Role of Gains in Schemas Low gain High gain

CPE 470/670 - Lecture 10 Foraging Example

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

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

CPE 470/670 - Lecture 10 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 –Behaviors cast votes on potential responses

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

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

CPE 470/670 - Lecture 10 Emergent Behavior The resulting robot behavior may sometimes be surprising or unexpected  emergent behavior

CPE 470/670 - Lecture 10 Wall Following A simple wall following controller: –If too close on left-back, turn left –If too close on left-front, turn right –Similarly for right –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

CPE 470/670 - Lecture 10 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 –A robot’s interaction with the environment –The interaction of behaviors Often occurs in reactive and behavior-based systems (BBS) Typically exploited in reactive and BBS design

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

CPE 470/670 - Lecture 10 Emergent Behavior Emergent behavior is structured behavior that is apparent at one level of the system (the observer’s point of view) and not apparent at another (the controller’s point of view) The robot generates interesting and useful behavior without explicitly being programmed to do so!! E.g.: Wall following can emerge from the interaction of the avoidance rules and the structure of the environment

CPE 470/670 - Lecture 10 Components of Emergence The notion of emergence depends on two components –The existence of an external observer, to observe the emergent behavior and describe it –Access to the internals of the controller, to verify that the behavior is not explicitly specified in the system The combination of the two is, by many researchers, the definition of emergent behavior

CPE 470/670 - Lecture 10 Unexpected & Emergent Behavior Some argue that the description above is not emergent behavior and that it is only a particular style of robot programming –Use of the environment and side-effects leads to the novel behavior Their view is that emergent behavior must be truly unexpected, and must come to a surprise to the external observer

CPE 470/670 - Lecture 10 Expectation and Emergence The problem with unexpected surprise as property of behavior is that: –it entirely depends on the expectations of the observer which are completely subjective –it depends on the observer’s knowledge of the system (informed vs. naïve observer) –once observed, the behavior is no longer unexpected

CPE 470/670 - Lecture 10 Emergent Behavior and Execution Emergent behavior cannot always be designed in advance and is indeed unexpected This happens as the system runs, and only at run-time can emergent behavior manifest itself The exact behavior of the system cannot be predicted –Would have to consider all possible sequences and combinations of actions in all possible environments –The real world is filled with uncertainty and dynamic properties –Perception is affected by noise If we could sense the world perfectly, accurate predictions could be made and emergence would not exist!

CPE 470/670 - Lecture 10 Desirable/Undesirable Emergent Behavior New, unexpected behaviors will always occur in any complex systems interacting with the real world Not all behaviors (patterns, or structures) that emerge from the system's dynamics are desirable! Example: a robot with simple obstacle avoidance rules can oscillate and get stuck in a corner This is also emergent behavior, but regarded as a bug rather than a feature

CPE 470/670 - Lecture 10 Sequential and Parallel Execution Emergent behavior can arise from interactions of the robot and the environment over time and/or over space Time-extended execution of behaviors and interaction with the environment (wall following) Parallel execution of multiple behaviors (flocking) Given the necessary structure in the environment and enough space and time, numerous emergent behaviors can arise

CPE 470/670 - Lecture 10 Architectures and Emergence Different architectures have different methods for dealing with emergent behaviors: modularity directly affects emergence Reactive systems and behavior-based systems exploit emergent behavior by design –Use parallel rules and behaviors which interact with each other and the environment Deliberative systems and hybrid systems aim to minimize emergence –Sequential, no interactions between components, attempt to produce a uniform output of the system

CPE 470/670 - Lecture 10 Readings M. Matarić: Chapter 11, 12, 14