Dipartimento di Elettronica Informazione e Bioingegneria Robotics

Similar documents
Behaviour-Based Control. IAR Lecture 5 Barbara Webb

Control Arbitration. Oct 12, 2005 RSS II Una-May O Reilly

Embodiment from Engineer s Point of View

Subsumption Architecture in Swarm Robotics. Cuong Nguyen Viet 16/11/2015

COSC343: Artificial Intelligence

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

Overview of Challenges in the Development of Autonomous Mobile Robots. August 23, 2011

Robot Architectures. Prof. Holly Yanco Spring 2014

Robot Architectures. Prof. Yanco , Fall 2011

! The architecture of the robot control system! Also maybe some aspects of its body/motors/sensors

5a. Reactive Agents. COMP3411: Artificial Intelligence. Outline. History of Reactive Agents. Reactive Agents. History of Reactive Agents

Collective Robotics. Marcin Pilat

Hybrid architectures. IAR Lecture 6 Barbara Webb

ARTIFICIAL INTELLIGENCE-THE NEXT LEVEL

FU-Fighters. The Soccer Robots of Freie Universität Berlin. Why RoboCup? What is RoboCup?

Unit 1: Introduction to Autonomous Robotics

Artificial Intelligence

ES 492: SCIENCE IN THE MOVIES

Creating a 3D environment map from 2D camera images in robotics

Unit 1: Introduction to Autonomous Robotics

Service Robots in an Intelligent House

Birth of An Intelligent Humanoid Robot in Singapore

Key-Words: - Fuzzy Behaviour Controls, Multiple Target Tracking, Obstacle Avoidance, Ultrasonic Range Finders

STRATEGO EXPERT SYSTEM SHELL

Emergent Behavior Robot

COS Lecture 1 Autonomous Robot Navigation

Keywords Multi-Agent, Distributed, Cooperation, Fuzzy, Multi-Robot, Communication Protocol. Fig. 1. Architecture of the Robots.

Multi-Robot Teamwork Cooperative Multi-Robot Systems

ROBCHAIR - A SEMI-AUTONOMOUS WHEELCHAIR FOR DISABLED PEOPLE. G. Pires, U. Nunes, A. T. de Almeida

AN HYBRID LOCOMOTION SERVICE ROBOT FOR INDOOR SCENARIOS 1

Distributed Vision System: A Perceptual Information Infrastructure for Robot Navigation

A Flexible and Innovative Platform for Autonomous Mobile Robots

Incorporating a Connectionist Vision Module into a Fuzzy, Behavior-Based Robot Controller

Small Planetary Rovers

A User Friendly Software Framework for Mobile Robot Control

EE631 Cooperating Autonomous Mobile Robots. Lecture 1: Introduction. Prof. Yi Guo ECE Department

Machine Intelligence Laboratory

Multi-Robot Coordination. Chapter 11

Funzionalità per la navigazione di robot mobili. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Lecture 23: Robotics. Instructor: Joelle Pineau Class web page: What is a robot?

Robot: icub This humanoid helps us study the brain

Cognitive robots and emotional intelligence Cloud robotics Ethical, legal and social issues of robotic Construction robots Human activities in many

Multi-Platform Soccer Robot Development System

ENHANCED HUMAN-AGENT INTERACTION: AUGMENTING INTERACTION MODELS WITH EMBODIED AGENTS BY SERAFIN BENTO. MASTER OF SCIENCE in INFORMATION SYSTEMS

LDOR: Laser Directed Object Retrieving Robot. Final Report

Overview Agents, environments, typical components

Robot Control. Robot Control

Robots in the Loop: Supporting an Incremental Simulation-based Design Process

Robotic Systems ECE 401RB Fall 2007

Introduction to Vision & Robotics

RoboCup. Presented by Shane Murphy April 24, 2003

Initial Report on Wheelesley: A Robotic Wheelchair System

Prof. Emil M. Petriu 17 January 2005 CEG 4392 Computer Systems Design Project (Winter 2005)

Cognitive Robotics 2017/2018

Learning Behaviors for Environment Modeling by Genetic Algorithm

A Lego-Based Soccer-Playing Robot Competition For Teaching Design

VOICE CONTROL BASED PROSTHETIC HUMAN ARM

Implicit Fitness Functions for Evolving a Drawing Robot

Artificial Intelligence Game Playing/Robotics

Introduction to Robotics

GROUP BEHAVIOR IN MOBILE AUTONOMOUS AGENTS. Bruce Turner Intelligent Machine Design Lab Summer 1999

Behavior Emergence in Autonomous Robot Control by Means of Feedforward and Recurrent Neural Networks

Evolving High-Dimensional, Adaptive Camera-Based Speed Sensors

Using Reactive and Adaptive Behaviors to Play Soccer

COGNITIVE MODEL OF MOBILE ROBOT WORKSPACE

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

What is a robot? Introduction. Some Current State-of-the-Art Robots. More State-of-the-Art Research Robots. Version:

A Robust Neural Robot Navigation Using a Combination of Deliberative and Reactive Control Architectures

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS. Nuno Sousa Eugénio Oliveira

GA-based Learning in Behaviour Based Robotics

II. ROBOT SYSTEMS ENGINEERING

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment

Supporting the Design of Self- Organizing Ambient Intelligent Systems Through Agent-Based Simulation

CPS331 Lecture: Agents and Robots last revised November 18, 2016

understanding sensors

Advanced Robotics Introduction

League <BART LAB AssistBot (THAILAND)>

Available theses in industrial robotics (October 2016) Prof. Paolo Rocco Prof. Andrea Maria Zanchettin

Introduction to Embedded and Real-Time Systems W10: Hardware Design Choices and Basic Control Architectures for Mobile Robots

Adaptive Action Selection without Explicit Communication for Multi-robot Box-pushing

Team Project: A Surveillant Robot System

Homeostasis Lighting Control System Using a Sensor Agent Robot

Plan for the 2nd hour. What is AI. Acting humanly: The Turing test. EDAF70: Applied Artificial Intelligence Agents (Chapter 2 of AIMA)

Session 11 Introduction to Robotics and Programming mbot. >_ {Code4Loop}; Roochir Purani

Interactive Simulation: UCF EIN5255. VR Software. Audio Output. Page 4-1

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Interacting within Virtual Worlds (based on talks by Greg Welch and Mark Mine)

Distributed Control of Multi-Robot Teams: Cooperative Baton Passing Task

UNIT VI. Current approaches to programming are classified as into two major categories:

Cognitive Robotics 2016/2017

Glossary of terms. Short explanation

Scheduling and Motion Planning of irobot Roomba

On The Role of the Multi-Level and Multi- Scale Nature of Behaviour and Cognition

Today s Menu. Near Infrared Sensors

Agents in the Real World Agents and Knowledge Representation and Reasoning

S.P.Q.R. Legged Team Report from RoboCup 2003

Realistic Robot Simulator Nicolas Ward '05 Advisor: Prof. Maxwell

soccer game, we put much more emphasis on making a context that immediately would allow the public audience to recognise the game to be a soccer game.

Mechatronics 19 (2009) Contents lists available at ScienceDirect. Mechatronics. journal homepage:

Intelligent Robotics Sensors and Actuators

Transcription:

Dipartimento di Elettronica Informazione e Bioingegneria Robotics Behavioral robotics @ 2014

Behaviorism behave is what organisms do Behaviorism is built on this assumption, and its goal is to promote the scientific study of behavior. ( J. Watson 1913 ) 1. Psychology is the science of behavior. Psychology is not the science of mind. 2. Behavior can be described and explained without making ultimate reference to mental events or to internal psychological processes. The sources of behavior are external (in the environment), not internal (in the mind).

Change in prospective reasoning Where: brain Artificial Intelligence Information processing Absolute coordinates behave Where: organism Artificial Life Senso-motor integration Agent-centered

Behaviorism in robotics Embodied (= intrasomatico) Behaviour-based robotics Some inspiration from biology Reaching a goal depends on the environment Sensor data should be used directly to guide the robot motion There is no need of symbolic reasoning and global mapping Intelligence without representation and reasoning (Brooks, 1986)

Symbol Grounding Hypothesis Symbol system: no embodiment Symbol grounding No symbols, No symbolic relations No automatic problem solution No state space 4 properties of autonomous robots 1. Situateness, 2. Embodiment 3. Intelligence 4. Emergence

1. Situatedness The behavior of a creature depends on the environment in which it is embedded or situated. Creatures don t deal with abstract descriptions, but with the here and now of their environment A situated automaton is a finite-state machine whose inputs are provided by sensors connected to the environment, and whose outputs are connected to effectors.

2 Embodiment An embodied creature is one which has a physical body and experiences the world, at least in part, directly through the influence of the world on that body. The actions of a creature are part of a dynamic with the world and have immediate feedback on the creature s own sensations through direct physical coupling and its consequences. Only an embodied agent is validated as one that can deal with real world. Only through a physical grounding can any internal symbolic system be given meaning.

3 Emergence The intelligence of the system emerges from the system s interactions with the world and from sometimes indirect interactions between its components-- it is sometimes hard to point to one event or place within the system and say that is why some external action was manifested.

4 intelligence An autonomous (artificial) creature is one that is able to maintain a long term dynamic with its environment without intervention. Once an autonomous artificial creature is switched on, it does what is in its nature to do. Intelligence is in the eye of the observer.

Horizontal/vertical decomposition Shakey..but Perception takes too long Perception is not a solved problem Modeling/planning component assumes complete models are available Overall system cannot respond in real-time Most robots built this way have failed ambient

Behavior-based Approach Decompose overall control system into a layered set of reactive behaviors Each behavior represents a complete mapping from sensors to motor commands Low-level behaviors (e.g. avoid) run in real-time since they use little computation High-level behaviors are invoked only when necessary Requires arbitration strategy to choose among (or combine) conflicting behaviors

Complex behaviors from simple controls Complex and useful behavior need not necessarily be a product of an extremely complex control system Absolute coordinate systems are a source of error relational maps are more useful to a mobile robot For robustness, the robot must be able to function when one or more of its sensors fails recovery should be quick robots should be autonomous and self-sustaining

Subsumption a complex system has precursor in a simpler one The offspring contains the same mechanisms of the father with something more The offspring sussumes the father mechanisms layer 1 layer 2 layer 1

Subsumption architecture Each level sussumes as a subsystem the previous level

Subsumption: AFMS each module is implemented as a finite state machine augmented with some instance variables A finite state machine has - a set of states - a start state; (one or more stop states) - a set of symbols -a set of transitions switch bad on switch

Subsumption : Network Construction 1) Computation is organized as an asynchronous network of active computational elements(afsm) with a fixed topology of unidirectional connections. 2) Messages sent over connections have no implicit semantics they are small numbers (few bits), their meanings are dependent on the dynamics designed into both the sender and receiver 3) Sensors and actuators are connected to this network usually through asynchronous two-sided buffers. Only internal timers

control The control system is broken down into behaviors that run in parallel each behavior has direct access to sensor readings and can control the robot s motors directly observe changes build maps sense explore wander avoid objects act

communication Communication between modules is fixed module 1 module 2 module 3 3 ways to modify it monitoring inhibition suppression

Monitoring inhibition suppression The new layer monitors the messages between the modules of the previous layer using the same connection module3 new layer old layer module1 module2 Can inhibit the communication for 40 ms module3 new layer old layer module1 I module2 Can substitute the message for a limited time (40 ms) new layer old layer module3 module1 S module2

AFSM = a set of registers A virtual processor that executes a (set of) rules 4 states: Output Side effect Event wait Conditional dispatch some AFSM are directly connected to the robot hardware Sensors can store data in their registers Some output are directly sent to actuators

Behavior activation 1. Direct message through defined connections (and I and S nodes) 2. Activation propagation: when the messages received are more than a threshold, the behavior is activated 3. Ormonal system: defines expressions (condition monitors) as function of time, and releasers as functions of monitors. When evaluated in the activation slot of a behavior, their value can be checked against a threshold to activate the behavior.

Behavior Design Behavior design is more an art than a science In what situation does the behavior apply? What is the result of the behavior? Robustness? Scalability? Good behaviors produce smoothly varying control signals Emergent behavior is difficult to predict

Developing subsumption systems Decide sensors and actuators. Define first system. Add over the existent. Situation n STAGE n OK SYSTEM Situation 2 STAGE 2 OK STAGE 2 OK Situation 1 STAGE 1 STAGE 1 OK OK STAGE 1 OK time 0 Step 1 Step 2 Step n Result

Example: Allen ALLEN, Brooks 1986

step 1 Il robot moves only forward Forward Forward forward forward Left motor Right motor

step 2 A new layer to look for obstacles. If obstacle detected, one wheel moves backward tpo change direction. Detection obstacle Avoid backward backward Forward forward S Left motor Forward forward S Right motor

step 3 To avoid that the robot continues to move in a small region, a new level will introduce random phantoms to make the robot to change direction Random trigger Turn random phantom obstacle Detection S obstacle Avoid backward backward Forward forward S Left motor Forward forward S Right motor

step 4 To follow a wanted direction, we control the phantom obstacle Compass direction Transfer path Explorer controlled phantom obstacle Random trigger Turn S random phantom obstacle Detection S obstacle Avoid backward backward Forward forward S Left motor Forward forward S Right motor

step 5 Land marks obstacle goal user goal Navigate intended path find landmarks. The user sends a direction, the robot moves toward the landmark Compass direction Transfer S path Explorer controlled phantom obstacle Random trigger Turn S random phantom obstacle Detection S obstacle Avoid backward backward Forward forward S Left motor Forward forward S Right motor

Example: herbert MIT AI Lab in 1988 Primary Goal To wander in the office following walls and avoiding obstacles Look for soda-like objects, pick it up and drop it at a base location Sensors vision and a laser striper to find soda cans, and sonars and IRs to wander around safely.

Herbert Behavior Herbert Behavior search for soda cans; When found grab it, pick it up, weigh it,... if heavy (full), put it down, if empty, pick it up, and head home. There is no internal wire between the AFSMs that achieve can finding, grabbing, arm tucking, and going home. The relevant parts of the control system interact and activate each other through sensing the world.

Level 1

Level 1 wander

Level 2 Grabber Pathplan Straighten Monitor Integrate

Grasping - Sensors Sensors in the hand Crossed IR sensor Finger Beam Tip switches Wrist switch

Grasping Cans Case 1: Can already between the fingers Identified by the finger beam It grips everything that can be placed between the fingers Case 2: Can placed in front of the hand Crossed IR beam identifies the object Extend arm till the finger beam is activated Hand can knock over the object Lift the hand Case 3: Can is some distance away from hand search for can near the surface than a few feet above Cruise the surface where can is placed Once IR detects a can, grab it

Grasping Cans ENGRADE & DESCENT Locate table BOUNCE & SURFACE Cruise over the surface OVER & EXTEND Position the hand to grab GRASP Grab the can HOIST & PARK Bring the can closer to body

Behavior Low Level capabilities Obstacle avoidance Wall following Real-time recognition of soda can-like objects and desk-like objects (Does not explain how it determines if the can is empty)

Hoser shoot people 3 behaviors: Wander, Locate, Shoot Wander go around to find a person uses IR when found go to Locate Locate orient the arm towards the person, then go to Shoot Shoot shoot (water) every 0.1 seconds for a given time, maintaining the person at center. Then go to wander and suppress for a few seconds the locate mode

Genghis Genghis is a 1Kg six legged robot (1989) 12 motors, 12 force sensors, 1 inclinometer, 2 whiskers in front for obstacle, IR sensor in front Alpha advancing Beta - lifting

Genghis behaviors Level 1: standup 2 modules per leg; control alpha (advance) & beta (balance) motor Level 2: simple walk does not compensate for rough terrain Level 3: force balancing Compensates for rough terrain Level 4: leg lifting Level 5: whiskers

Walking with six legs Walk Up leg trigger leg down S beta position

Equilibrium of the legs alpha advance alpha balance S alpha position Alpha balance tries to make the sum of the alpha angles = 0

Walking Walk Up leg trigger leg down S beta pos alpha advance alpha balance S alpha pos

Walking in rough terrain Walk Up leg trigger Alpha collision leg down S beta pos alpha advance alpha balance S alpha pos

Obelix and learning Obelix has to push boxes against the walls 3 behaviors Mahadevan, Connell, IBM, 1991 (finder) Move using sonars until bump is activated (pusher) Move until stuck is activated (unwedger) If in stuck move to go away

Obelix sensors The activating conditions of the behaviors contains sensor data from Sonar go where an object can be found infrared verify the object is near and can start pushing motor current, to verify if stuck bump, to detect contact

subsumption advantages Provides a way to incrementally build and test a complex mobile robot control system Supports parallel computation in a straightforward, intuitive way Avoids centralized control; relies on self-centered and autonomous modules Leads to more emergent behavior -- Complex (and useful) behavior may simply be the reflection of a complex environment

Subsumption criticisms More complex behaviors? Is it an evolution? in the development of an individual, new representational structures are developed in response to the environment, not added by an experimenter. It would be more impressive if the robot learnt new behavior modules in response to the environment. Emphasis in this approach on reacting to the environment. But representations are needed for more complex tasks.

Schema+potential method Integrates joystick controller with potential method (the 2 vectors sum)