Unit 1: Introduction to Autonomous Robotics

Unit 1: Introduction to Autonomous Robotics Computer Science 4766/6778 Andrew Vardy Department of Computer Science Memorial University of Newfoundland...
Author: Kristian Grant
21 downloads 3 Views 4MB Size
Unit 1: Introduction to Autonomous Robotics Computer Science 4766/6778 Andrew Vardy Department of Computer Science Memorial University of Newfoundland

January 16, 2014

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

1 / 25

1

Introduction What is Autonomous Robotics What is this Course About? Relationship to Other Disciplines

2

Major Paradigms The Model-Based Paradigm Behaviour-Based Robotics Probabilistic Robotics

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

2 / 25

What is Autonomous Robotics

Autonomous? Comes from the Greek for self-willed Something which is autonomous operates independently of external controls

Robots? Comes from the Czech robotnik, meaning ‘workman’ From Karl Capek’s play “Rossum’s Universal Robots”

“A machine used to perform jobs automatically, which is controlled by a computer” [Cambridge Dictionary, 2006]

“Autonomous robots are intelligent machines capable of performing tasks in the world by themselves, without explicit human control over their movements.” [Bekey, 2005]

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

3 / 25

Which one of these robots is more autonomous?

The industrial robots on the left execute highly prescribed tasks in a controlled environment. The robot vacuum cleaner on the right must operate independently in uncontrolled environments. However, both robots can handle only a limited range of variation in their operating conditions. So the vacuum cleaner is more autonomous, but not nearly so autonomous as even the simplest of insects.

What is this Course About?

This course provides an introduction to the computational aspects of autonomous mobile robotics We will not consider the following in any detail: The construction of a robot’s body beyond the layout of its wheels The dynamics of robot motion i.e. How forces on a robot’s body lead to velocities

We will focus on how to program a robot to... Move (kinematics & control) Perceive Localize Navigate

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

5 / 25

Relationship to Other Disciplines Computer Science Artificial Intelligence (AI) Computer Vision (CV) Computational Geometry Algorithms

Computer and Electrical Engineering Signal Processing Control Systems

Mechanical Engineering Psychology, Neuroscience, Biology Biological insights for robotics Robotic instantiations of models

Autonomous Robotics (AR) is an inherently interdisciplinary field COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

6 / 25

AR as a Distinct Field of Study

AR is not just an application area for the preceding disciplines By contrast to AI or CV, AR is distinguished by its focus on large-scale space [Dudek and Jenkin, 2000] Robots must operate within environments which are larger than the robot’s immediate sensory horizon Requires: Incremental acquisition of knowledge Recognition of places Estimation of position Real-time response

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

7 / 25

Warning: Autonomous Robotics is Hard! What do I mean? There are many possible interpretations: 1

Its hard to get them to work! Getting a robot to perform is hard because there are so many subsystems (e.g. electrical, mechanical, software, power) and so many things that can go wrong.

2

Its hard to get them to do the things we can do so easily! Robots struggle to complete tasks that humans find easy which can lead to disappointment at what they can actually achieve.

3

This course is hard! I will make it as easy as I can, but it has to be challenging! We will be using ROS (Robot Operating System) which is difficult to learn and poorly documented (its open source). We use it because its extremely powerful and allows us to take advantage of the work of others without coding everything on our own.

All of the above interpretations are correct. COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

8 / 25

Major Paradigms

A few major paradigms in AR have emerged Model-Based Paradigm Build and maintain a model of the world and use it for planning

Behaviour-Based Robotics Forget about modelling the world—simple behaviours can interact through the environment to yield complex emergent behaviours

Probabilistic Robotics Assume that sensor data and robot actions are corrupted by noise; Represent the world and the robot’s place within it through probability distributions

This list is not exhaustive The paradigms listed above are also not mutually exclusive (numerous hybrid approaches exist)

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

9 / 25

The Model-Based Paradigm The model-based paradigm began in the late 1960’s and was heavily influenced by symbolic approaches to AI e.g. Nilsson and others at SRI developed “Shakey” Shakey operated in an environment specially modified to assist its vision system Its task was to push particular objects from one one place to another

www.ai.sri.com/shakey

Based on STRIPS COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

10 / 25

STRIPS (STanford Research Institute Problem Solver) Best illustrated using a “blocks world” environment [Luger and Stubblefield, 1998]

Environmental state described by a set of predicates ontable(a) on(b,a) clear(b) ontable(c) on(e,d) clear(c) ontable(d) gripping() clear(e) Operations in the world represented by operations on these predicates: pickup(X), putdown(X), stack(X,Y), unstack(X,Y) COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

11 / 25

An operation such as pickup(X) affects the state description set as follows: if gripping() ∧ clear(X) ∧ ontable(X) add: gripping(X) delete: ontable(X), gripping() (This operation is for picking up objects lying directly on the table)

The state space is searched for the goal state STRIPS implements a search through state space to find a sequence of operations that would transform the initial state into the goal state

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

12 / 25

Deficiencies

A number of deficiencies of the model-based paradigm have been identified The symbol-grounding problem: “the symbols with which the system reasons often have no physical correlation with reality” [Arkin, 1998] The modelling process is difficult Sensor data is noisy and ambiguous Updating the model is expensive and error-prone World / model deviations render plans useless

Many of these deficiencies remain in current work; some may be intractable

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

13 / 25

Behaviour-Based Robotics (BBR) [Arkin, 1998] Term coined in the 1980’s but roots stretch back much further Cybernetics: The science of control and communications in both animal and machine Norbert Wiener utilized control systems theory to understand natural behaviour (1940’s) W. Grey Walter built a robotic tortoise exhibiting the following behaviours (1953) Wander (lowest priority) Head toward a weak light Back away from a bright light Avoid obstacles (highest priority)

Robot acted on the highest priority applicable behaviour Above the battery charger was affixed a strong light; when charge was low this light was perceived as weak Thus, a fully charged tortoise would back away from the bright charger and begin to “explore” its world; When discharged it would return to the apparently weak light of the charger COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

14 / 25

Braitenberg Vehicles [Arkin, 1998] Valentino Braitenberg devised thought experiments to illustrate that complex behaviour could result from very simple mechanisms (1984)

The Subsumption Architecture [Brooks, 1986] Rodney Brooks proposed a behaviour-based approach called the subsumption architecture [Brooks, 1991] Brooks criticized the model-based functional decomposition

The tight coupling between layers leads to problems: Errors made by earlier layers propagate to subsequent layers No possibility for parallelism Overall update cycle is slow The introduction of a new behaviour requires the modification of all layers

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

17 / 25

The subsumption architecture organizes behaviours into vertical layers with each layer acting out its own behaviour independently

There is no central controller; Each layer processes sensor data and controls actuators unless... ...suppressed or inhibited by another layer Thus, there is a dynamic hierarchy of layers

New behaviours implemented as new layers without modifying existing layers (evolutionary growth)

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

18 / 25

“Intelligence without representation”: According to Brooks... Intelligent behaviour emerges from a collection of simpler behaviours, appropriately interconnected No representation (i.e. model) is required: “use the world as its own model”

Methodology: Incrementally build in new behaviours—each capable of controlling the robot and achieving some task Robots should be situated and embodied Situated: Robot operates in the real world and is directly coupled to it through its sensors and actuators Embodied: The robot’s brain should be housed within its body Simulations allow experimenters to posit the same unrealistic assumptions made in an AI “blocks world”; A situated embodied robot cannot ‘fake it’

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

19 / 25

Deficiencies

Scalability BBR may be suitable for low-level tasks but may not scale to more sophisticated tasks Some form of representation may be required for tasks where the moment-to-moment sensory information is insufficient

Thus, hybrid behaviour-based / model-based approaches are popular [Arkin, 1998] Yet, neither approach addresses the pervasive influence of uncertainty in robotics

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

20 / 25

Probabilistic Robotics [Thrun et al., 2005]

Increasingly popular since the mid-90’s; Roots of this paradigm can be traced back to the invention of the Kalman filter (1960) Premise: Perception is uncertain The results of robot actions are uncertain These uncertainties should be represented explicitly We should represent “the world” as a probability distribution over all possible worlds

“instead of relying on a single ‘best guess’ as to what might be the case, probabilistic algorithms represent information by probability distributions over a whole space of guesses” [Thrun et al., 2005]

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

21 / 25

An Example: Localization Localization is the problem of estimating position w.r.t. the global reference frame In this example, a robot tries to localize itself within a 1D environment using a ‘door detector’ sensor and a map Initially, the robot doesn’t know where it is, but does know its orientation (facing to the right) Notation: x — the current position of the robot z — the current sensor observation bel(x) — robot’s belief (i.e. probability) that is at x, given both past and current observations and movements p(z|x) — probability of current observation given that robot is at x Requires a map to know how likely an observation is at each location

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

22 / 25

Deficiencies?

Probabilistic robotics is the newest, most active paradigm in AR and is continuing to evolve at a fast pace; Thus, its success cannot yet be fully characterized Major challenge: Navigation requires a map The representation of a probability distribution over all possible maps requires significant computational resources

COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

24 / 25

References Arkin, R. (1998). Behavior-Based Robotics. MIT Press. Bekey, G. (2005). Autonomous Robots: From Biological Inspiration to Implementation and Control. MIT Press. Brooks, R. (1986). A robust layered control system for a mobile robot. IEEE Journal of Robotics and Automation, 2(1):14–23. Brooks, R. (1991). Intelligence without representation. Artificial Intelligence, 47:139–159. Cambridge Dictionary (2006). Cambridge online dictionaries. Dudek, G. and Jenkin, M. (2000). Computational Principles of Mobile Robotics. Cambridge University Press. Luger, G. and Stubblefield, W. (1998). Artificial Intelligence: Structures and Strategies for Complex Problem Solving. Addison Wesley. Thrun, S., Burgard, W., and Fox, D. (2005). Probabilistic Robotics. MIT Press. COMP 4766/6778 (MUN)

Course Introduction

January 16, 2014

25 / 25