Introduction To Robotics
Lecture 1 Instructor: Monica Nicolescu
The term robot
Karel Capeks 1921 play RUR (Rossums Universal Robots)
It is (most likely) a combination of rabota (obligatory work) and robotnik (serf)
Most real-world robots today do perform such obligatory work in highly controlled environments
Factory automation (car assembly)
But that is not what robotics research about; the trends and the future look much more interesting
CS 491/691(X) - Lecture 1
What is a Robot?
In the past
A clever mechanical device automaton
Robotics Industry Association, 1985
A re-programmable, multi-functional manipulator designed to move material, parts, tools, or specialized devices [] for the performance of various tasks
What does this definition missing?
Notions of thought, reasoning, problem solving, emotion, consciousness
CS 491/691(X) - Lecture 1
A Robot is
a machine able to extract information from its environment and use knowledge about its world to act safely in a meaningful and purposeful manner (Ron Arkin, 1998) an autonomous system which exists in the physical world, can sense its environment and can act on it to achieve some goals
CS 491/691(X) - Lecture 1
What is Robotics?
Robotics is the study of robots, autonomous embodied systems interacting with the physical
world
Robotics addresses perception, interaction and action, in the physical world
CS 491/691(X) - Lecture 1
Robots: Alternative Terms
UAV
unmanned aerial vehicle
UGV (rover)
unmanned ground vehicle
UUV
unmanned undersea vehicle
CS 491/691(X) - Lecture 1
An assortment of robots
CS 491/691(X) - Lecture 1
Anthropomorphic Robots
CS 491/691(X) - Lecture 1
Animal-like Robots
CS 491/691(X) - Lecture 1
Humanoid Robots
Asimo (Honda)
QRIO
Robonaut (NASA)
CS 491/691(X) - Lecture 1 DB (ATR)
Sony Dream Robot
10
What is in a Robot?
Sensors Effectors and actuators
Used for locomotion and manipulation
Controllers for the above systems
Coordinating information from sensors with commands for the robots actuators
CS 491/691(X) - Lecture 1
11
Sensors
Sensor = physical device that provides information about the world
Process is called sensing or perception
What does a robot need to sense?
Depends on the task it has to do
Sensor (perceptual) space
All possible values of sensor readings
One needs to see the world through the robots eyes Grows quickly as you add more sensors
CS 491/691(X) - Lecture 1
12
State
State: A description of the robot (of a system in general) For a robot state can be:
Observable: the robot knows its state entirely Partially observable: the robot only knows a part of its state Hidden (unobservable): the robot does not have any access to its state Discrete: up, down, blue, red Continuous: 2.34 mph
CS 491/691(X) - Lecture 1 13
Types of State
External
The state of the world as perceived by the robot Perceived through sensors E.g.: sunny, cold
Internal
The state of the robot as it can perceive it Perceived through internal sensors, monitoring (stored, remembered state) E.g.: Low battery, velocity
The robots state is the combination of its internal and external state
CS 491/691(X) - Lecture 1 14
State Space
All possible states a robot could be in
E.g.: light switch has two states, ON, OFF; light switch with dimmer has continuous state (possibly infinitely many states)
Different than the sensor/perceptual space!!
Internal state may be used to store information about the world (maps, location of food, etc.)
How intelligent a robot appears is strongly dependent on how much and how fast it can sense its environment and about itself
CS 491/691(X) - Lecture 1 15
Representation
Internal state that stores information about the world is called a representation or internal model
Self: stored proprioception, goals, intentions, plans Environment: maps Objects, people, other robots Task: what needs to be done, when, in what order
Representations and models influence determine the complexity of a robots brain
CS 491/691(X) - Lecture 1
16
Action
Effectors: devices of the robot that have impact on the environment (legs, wings robotic legs, propeller) Actuators: mechanisms that allow the effectors to do their work (muscles motors) Robotic actuators are used for
locomotion (moving around, going places)
manipulation (handling objects)
This divides robotics into two basic areas
Mobile robotics
Manipulator robotics
CS 491/691(X) - Lecture 1 17
Autonomy
Autonomy is the ability to make ones own decisions and act on them.
For robots: take the appropriate action on a given situation
Autonomy can be complete (R2D2) or partial (teleoperated robots) Controllers enable robots to be autonomous
Play the role of the brain and nervous system in animals
Typically more than one controller, each process information from sensors and decide what actions to take Challenge in robotics: how do all these controllers coordinate with each other?
CS 491/691(X) - Lecture 1 18
Control Architectures
Robot control is the means by which the sensing and action of a robot are coordinated Control architecture
Guiding principles and constraints for organizing a robots control system
Robot control may be implemented:
In hardware: programmable logic arrays In software
Controllers need not (should not) be a single program
Should control modules be centralized?
CS 491/691(X) - Lecture 1 19
Languages for Programming Robots
What is the best robot programming language?
There is no best language
In general, use the language that
Is best suited for the task Comes with the hardware You are used to
General purpose:
JAVA, C
Specially designed:
the Behavior Language, the Subsumption Language
CS 491/691(X) - Lecture 1 20
Spectrum of robot control
From Behavior-Based Robotics by R. Arkin, MIT Press, 1998 CS 491/691(X) - Lecture 1 21
Robot control approaches
Reactive Control
Dont think, (re)act.
Deliberative (Planner-based) Control
Think hard, act later.
Hybrid Control
Think and act separately & concurrently.
Behavior-Based Control (BBC)
Think the way you act.
CS 491/691(X) - Lecture 1 22
Thinking vs. Acting
Thinking/Deliberating
slow, speed decreases with complexity involves planning (looking into the future) to avoid bad solutions
thinking too long may be dangerous
requires (a lot of) accurate information flexible for increasing complexity
Acting/Reaction
fast, regardless of complexity innate/built-in or learned (from looking into the past) limited flexibility for increasing complexity
CS 491/691(X) - Lecture 1 23
How to Choose a Control Architecture?
For any robot, task, or environment consider:
Is there a lot of sensor noise? Does the environment change or is static? Can the robot sense all that it needs? How quickly should the robot sense or act? Should the robot remember the past to get the job done? Should the robot look ahead to get the job done? Does the robot need to improve its behavior and be able to learn new things?
CS 491/691(X) - Lecture 1
24
Reactive Control:
Dont think, react!
Technique for tightly coupling perception and action to provide fast responses to changing, unstructured environments Collection of stimulus-response rules Limitations
No/minimal state
No memory No internal representations of the world Unable to plan ahead Unable to learn
Advantages
Very fast and reactive Powerful method: animals are largely reactive
CS 491/691(X) - Lecture 1
25
Deliberative Control:
Think hard, then act!
In DC the robot uses all the available sensory information and stored internal knowledge to create a plan of action: sense plan act (SPA) paradigm Limitations
Planning requires search through potentially all possible plans these take a long time
Requires a world model, which may become outdated
Too slow for real-time response
Advantages
Capable of learning and prediction Finds strategic solutions
CS 491/691(X) - Lecture 1 26
Textbooks
Lectures
The Robotics Primer, 2001. Author: Maja Mataric' Available in draft form at the bookstore
CS 491/691(X) - Lecture 1
27