Robot Intelligence Kevin Warwick.

Slides:



Advertisements
Similar presentations
Bioinspired Computing Lecture 16
Advertisements

Project Title Here IEEE UCSD Overview Robo-Magellan is a robotics competition emphasizing autonomous navigation and obstacle avoidance over varied, outdoor.
Layered Architecture Group 1 - Wesley Flowers, Brian Kennedy, Corey Masters, Everett Thayer, Andre Vicente.
Reactive and Potential Field Planners
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
CSE 380 – Computer Game Programming Pathfinding AI
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.
Class Discussion Chapter 2 Neural Networks. Top Down vs Bottom Up What are the differences between the approaches to AI in chapter one and chapter two?
A Summary of the Article “Intelligence Without Representation” by Rodney A. Brooks (1987) Presented by Dain Finn.
Robotics CSPP Artificial Intelligence March 10, 2004.
Self-Organizing Hierarchical Neural Network
Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc.
Mark Dixon Page 1 22 – Problem Solving. Mark Dixon Page 2 Session Aims & Objectives Aims –to provide a more explicit understanding of problem solving.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
Integrating POMDP and RL for a Two Layer Simulated Robot Architecture Presented by Alp Sardağ.
Motor Schema Based Navigation for a Mobile Robot: An Approach to Programming by Behavior Ronald C. Arkin Reviewed By: Chris Miles.
Design of Autonomous Navigation Controllers for Unmanned Aerial Vehicles using Multi-objective Genetic Programming Gregory J. Barlow March 19, 2004.
Chapter Seven The Network Approach: Mind as a Web.
Chapter 14 Genetic Algorithms.
Behavior- Based Approaches Behavior- Based Approaches.
A Robust Layered Control System for a Mobile Robot Rodney A. Brooks Presenter: Michael Vidal.
June 12, 2001 Jeong-Su Han An Autonomous Vehicle for People with Motor Disabilities by G. Bourhis, O.Horn, O.Habert and A. Pruski Paper Review.
Fuzzy control of a mobile robot Implementation using a MATLAB-based rapid prototyping system.
Mobile Robot Control Architectures “A Robust Layered Control System for a Mobile Robot” -- Brooks 1986 “On Three-Layer Architectures” -- Gat 1998? Presented.
Introduction to Behavior- Based Robotics Based on the book Behavior- Based Robotics by Ronald C. Arkin.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
Localisation & Navigation
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.
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.
A New Theory of Neocortex and Its Implications for Machine Intelligence TTI/Vanguard, All that Data February 9, 2005 Jeff Hawkins Director The Redwood.
University of Amsterdam Search, Navigate, and Actuate - Qualitative Navigation Arnoud Visser 1 Search, Navigate, and Actuate Qualitative Navigation.
Fuzzy Genetic Algorithm
Mobile Robot Navigation Using Fuzzy logic Controller
Robotics Sharif In the name of Allah. Robotics Sharif Introduction to Robotics o Leila Sharif o o Lecture #2: The.
Ground Truth Free Evaluation of Segment Based Maps Rolf Lakaemper Temple University, Philadelphia,PA,USA.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Robot Intelligence Kevin Warwick. Reactive Architectures I: Subsumption Perhaps the best known reactive architecture, developed in the ‘80s by Rodney.
OOAD Unit – I OBJECT-ORIENTED ANALYSIS AND DESIGN With applications
SOFTWARE DESIGN. INTRODUCTION There are 3 distinct types of activities in design 1.External design 2.Architectural design 3.Detailed design Architectural.
Topological Path Planning JBNU, Division of Computer Science and Engineering Parallel Computing Lab Jonghwi Kim Introduction to AI Robots Chapter 9.
Robotics Club: 5:30 this evening
Path Planning Based on Ant Colony Algorithm and Distributed Local Navigation for Multi-Robot Systems International Conference on Mechatronics and Automation.
Ghislain Fouodji Tasse Supervisor: Dr. Karen Bradshaw Computer Science Department Rhodes University 04 August 2009.
Casne.ncl.ac.uk Taking care of the CrumbleBot Please do NOT stress the robot's motors 1.Do NOT push the robot 2.Do NOT hold the.
4/22/20031/28. 4/22/20031/28 Presentation Outline  Multiple Agents – An Introduction  How to build an ant robot  Self-Organization of Multiple Agents.
The Corridor Challenge
CSPP Artificial Intelligence March 10, 2004
Vision-Guided Humanoid Footstep Planning for Dynamic Environments
Chapter 14 Genetic Algorithms.
CMSC Artificial Intelligence March 11, 2008
7. Modular and structured design
COGNITIVE APPROACH TO ROBOT SPATIAL MAPPING
Schedule for next 2 weeks
Build Intelligence from the bottom up!
Build Intelligence from the bottom up!
Games with Chance Other Search Algorithms
CIS 488/588 Bruce R. Maxim UM-Dearborn
Artificial Intelligence Chapter 2 Stimulus-Response Agents
Creating Data Representations
Build Intelligence from the bottom up!
Artificial Intelligence Lecture No. 28
Subsuption Architecture
Paper by D.L Parnas And D.P.Siewiorek Prepared by Xi Chen May 16,2003
CS 416 Artificial Intelligence
The Network Approach: Mind as a Web
Hierarchical Clustering
Chapter 12: Building Situated Robots
Multidisciplinary Optimization
Presentation transcript:

Robot Intelligence Kevin Warwick

Task Example We will look at a relatively simple example and see how a robot might solve a specific problem Try to spot the assumptions we/humans make on the robot’s capabilities In the problem the robot will start at one point and must find it’s way to the goal

Topological Representation

Topological Representation The space can be partitioned using for example: Binary State Partitioning. But does the robot have or can it find out such a map?

A connectivity graph of this BSP is:

Both together…

Valid Routes In order to get from the start position (region 2) to the goal (region 14) the robot must follow one of the routes from 2 to 14 in the graph 2  3  4  5  6  10  13  12  14 2  3  4  9  10  13  12  14 2  3  4  8  7  11  12  14 2  1  7  11  12  14 2  1  7  8  4  5  6  10  13  12  14 2  1  7  8  4 9  10  13  12  14

Real-time Solutions in Unmodelled Environments If the robot did not know the structure of the environment and could not build a planned trajectory, the goal may still be reached Consider the goal having a beacon to indicate to the robot where the goal is

Real-time Solutions in Unmodelled Environments Now consider a wall following routine The robot moves forward following the left hand wall until it reaches an obstacle (a wall in front) It turns right – possibly repeatedly it no longer detects the presence of a wall to the left It turns left Can the robot reach the goal?

Problem Revisited

Real-time Solutions in Unmodelled Environments In this case the robot will be able to reach the goal if the robot initially moves to the right If the robot moves to the left then it will circle the top-left island and would require some additional reasoning to break out of that cycle e.g. Odometry would indicate that the pose of the robot has repeated a number of times

Robot Architectures Example: seven dwarf Pseudocode … if left_sensor_reading turn right elseif right_sensor_reading turn left elseif (right_sensor_reading) and (left_sensor_reading) reverse else move forward

Robot Architectures Add in wall following … if left_sensor_reading if left_sensor_reading < min turn right_slightly if left_sensor_reading > max turn left_slightly else move forward elseif right_sensor_reading if right_sensor_reading < min if right_sensor_reading > max elseif (right_sensor_reading) and (left_sensor_reading) reverse Even introducing modest extensions can lead to increased complexity in the algorithm if it is developed in an ad hoc way Need to find some more formalised way of developing behaviours

Robot Architectures Two main classes Three main types: Centralised Reactive Three main types: High Level Control (centralised) Treat the robot as an abstract entity Apply classical AI techniques to define complex tasks Top down (Computer Science) approach Functional (centralised) Classical horizontal connection between perception and action sense – model – plan – act paradigm

Robot Architectures Biological Analogues Hybrid systems Reactive (distributed) Bottom up (Cybernetics) approach Subsumption most widely known Motor Schema Ego-behaviour Biological Analogues Artificial Neural Networks Genetic Algorithms Hybrid systems Combinations of any/all of the above

Centralised Controller (functional)

Distributed Controller (reactive)

Functional Architectures I: Hierarchical Decompose the control process by function Low level processes provide simple functions that are grouped together to provide higher level functions e.g. Lower level processes position sensing motor output forward kinematics inverse kinematics dynamic model of the robot low level vision processing (e.g. edge detection) … Note: while these are “low level” some of them can be computationally challenging, especially kinematics, dynamics and vision Higher level processes Mission planning Map building Reasoning about tasks Sequencing tasks

Functional Architectures II: Blackboard Blackboard-based architectures rely on a common pool of information (the blackboard) that is shared by independent computational processes Example: Ground Surveillance Robot (GSR) designed to navigate from one known location to another known location over unknown natural terrain to complete the task the GSR has to build a terrain map GSR uses the blackboard to represent and pass information from one software module to another there is a loose coupling between modules Disadvantages requires the information to be consistent in its representation cannot use relative positions as defined in one subsystem in another can lead to bottlenecks in processing asynchronous nature of blackboards can lead to problems due to timing skews difficulties arise if more than one module can change data in the pool … which set of data is the right one? similar problem to file sharing violations

Example Blackboard System

Basic Reactive Consider instead a very basic reactive robot: Higher level goal – move towards a desired end position (infra-red?) Lower level behaviour – move forwards Lower level behaviour – avoid obstacles

Basic Reactive Lower level behaviours – example Kohonen network to map robot positional state/situation (object to left/right/front – distance) Fuzzy Automata – Physical realisation in each state – e.g. left wheel forward fast, right wheel reverse slowly Needs reward/punishment Probabilities randomised then updated based on success/failure of moving forward and avoiding obstacles

Next Presentation Architectures