Topics: Introduction to RoboticsCS 491/691(X): Topics: Introduction to Robotics CS 491/691(X) Lecture 1
Instructor: Monica Nicolescu
General Information: General Information Instructor: Dr. Monica Nicolescu
E-mail: monica@cs.unr.edu
Office hours: Tuesday, Thursday 10:30am-12:00pm
Room: SEM 239
Class webpage:
http://www.cs.unr.edu/~monica/Courses/CS491-691/
Time and Place: Time and Place Lectures
Tuesday: 1:00pm-2:15pm, SFB 103
Labs
Thursday: 1:00pm-2:15pm, SEM 342A
The use of the lab equipment requires a $50 deposit paid at the cashier’s office
Deposit is returned at the end of the semester
Class Policy: Class Policy Grading
Homeworks: 20%
Exam (1): 20%
Exam (2): 20%
Laboratory sessions: 20%
Final project: 20%
Late submissions
No late submissions will be accepted
Attendance
Exams, laboratory sessions and final competition are mandatory
If you cannot attend you must discuss with the instructor in advance
Textbooks: Textbooks Lectures
The Robotics Primer, 2001. Author: Maja Mataric'
Available in draft form at the bookstore
Labs
Robotic Explorations: An Introduction to Engineering Through Design, 2001. Author: Fred G. Martin
What will we Learn?: What will we Learn? Fundamental aspects of robotics
What is a robot?
What are robots composed of?
How do we control/program robots?
Hands-on experience
Build robots using LEGO parts
Control robots using Interactive C and the HandyBoard microcontroller
Contests during the semester, final competition
The term “robot”: The term “robot” Karel Capek’s 1921 play RUR (Rossum’s 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
What is a Robot?: 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
A Robot is…: 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
What is Robotics?: 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
Robots: Alternative Terms: Robots: Alternative Terms UAV
unmanned aerial vehicle
UGV (rover)
unmanned ground vehicle
UUV
unmanned undersea vehicle
An assortment of robots…: An assortment of robots…
Anthropomorphic Robots: Anthropomorphic Robots
Animal-like Robots: Animal-like Robots
Humanoid Robots: Humanoid Robots Robonaut (NASA) Sony Dream Robot Asimo (Honda) DB (ATR) QRIO
What is in a Robot?: 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 robot’s actuators
Sensors: 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 robot’s “eyes”
Grows quickly as you add more sensors
State: 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
Types of State: 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 robot’s state is the combination of its internal and external state
State Space: 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
Representation: 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 robot’s “brain”
Action: 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
Autonomy: Autonomy Autonomy is the ability to make one’s 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?
Control Architectures: 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 robot’s 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?
Languages for Programming Robots: 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
Spectrum of robot control: Spectrum of robot control From “Behavior-Based Robotics” by R. Arkin, MIT Press, 1998
Robot control approaches: Robot control approaches Reactive Control
Don’t 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.
Thinking vs. Acting: 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
How to Choose a Control Architecture?: 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?
Reactive Control: Don’t think, react!: Reactive Control: Don’t 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
Deliberative Control: Think hard, then act!: 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
Readings: Readings F. Martin: Sections 1.1, 1.2.3
M. Matarić: Chapters 1, 3