35
Advanced Topics in Robotics CS493/790 (X) Lecture 1 Instructor: Monica Nicolescu

Advanced Topics in Robotics CS493/790 (X) Lecture 1 Instructor: Monica Nicolescu

Embed Size (px)

Citation preview

Advanced Topics in Robotics

CS493/790 (X)

Lecture 1

Instructor: Monica Nicolescu

CS 493/790(X) - Lecture 1 2

What will we Learn?

• Cover fundamental aspects of robotics– What is a robot?

– What are robots composed of?

– How do we control/program robots?

• Advanced robotics techniques– Development of the robotics field and the main

directions of research in this area

– Representative approaches to robot control, learning, coordination and cooperation between multiple robots and human-robot interaction

• Hands-on experience

CS 493/790(X) - Lecture 1 3

General Information

• Instructor: Dr. Monica Nicolescu

– E-mail: [email protected]

– Office hours: Tuesday, Thursday 2:30pm-3:30pm

– Room: SEM 239

• Class webpage:

– http://www.cs.unr.edu/~monica/Courses/CS493-790/

• Time and Place

– Tuesday: 9:30-10:45am; PE 205

• Laboratory room

– SEM 246

CS 493/790(X) - Lecture 1 4

Readings and Presentations

• Two papers (on average) discussed at each lecture

• Each paper is presented by a student

• Presentation guidelines

– At most 30 minutes

– Briefly summarize the paper

– Discuss the paper, its strengths, weaknesses, any points

needing clarification

– Addressing any questions the other students may have

CS 493/790(X) - Lecture 1 5

Readings and Paper Reports

• For each paper, all students must submit, at the

beginning of the class a brief report of the paper

• Report format (typed)

– Student's name

– Title and authors of the paper

– A short paragraph summarizing the contributions of the

paper

– A critique of the paper that addresses the strengths and

weaknesses of the paper

CS 493/790(X) - Lecture 1 6

Project

• Individual project on topics covered in class

• Project topics: an implementation of either:

– a single robot system (involving complex behavior and

demonstrated on a physical robot) or

– a multi-robot system (involving cooperation/

communication/ coordination between robots and

demonstrated in simulation)

CS 493/790(X) - Lecture 1 7

Project Reports

• Should include the following:

– Title, author

– Abstract

– Introduction and motivation

– Problem definition: project goals, assumptions, constraints, and

evaluation criteria

– Details of proposed approach

– Results and objective experimental evaluation

– Review of relevant literature and previous research and how it relates to

the project

– Discussion (strengths and weaknesses) and conclusion

– References

– Appendix (relevant code or algorithms)

CS 493/790(X) - Lecture 1 8

Project Testbeds

• The Player-Stage-Gazebo simulator

(playerstage.sourceforge.net) – Player is a general purpose language-indepedent network

server for robot control

– Stage is a Player-compatible high-fidelity indoor multi-robot

simulation testbed

– Gazebo is a Player-compatible high-fidelity 3D outdoor

simulation testbed with dynamics

– Player/Stage/Gazebo allows for direct porting to Player-

compatible physical robots.

CS 493/790(X) - Lecture 1 9

Project Testbeds

• One Player-compatible ActivMedia Pioneer 1 AT (all

terrain) robot – 7 sonar sensors and requires the use of a laptop (not provided)

• One Player-compatible ActivMedia Pioneer 1 indoor

robot– 7 sonar sensors and requires the use of a laptop (not provided)

• 16 LEGO robot kits– Handy Board microcontroller

– Programming in Interactive C

CS 493/790(X) - Lecture 1 10

Class Policy

• Grading

– Paper reports: 20%

– Participation in class discussions: 20%

– Paper presentations: 20%

– Final project: 40%

• Late submissions

– No late submissions will be accepted

• Attendance

– Full participation in class discussions

CS 493/790(X) - Lecture 1 11

Important Dates/Milestones

• September 21

– Project topic proposal and presentation

– One page that outlines the specific goals,

implementation platform and the proposed approach

• November 4

– Project status presentations

– 5 minute in-class presentation

– One-two pages that describe the current status of the

project, what has been done, what is still to be done

CS 493/790(X) - Lecture 1 12

Important Dates/Milestones

• December 7

– Project final presentations 

– May extend to Dec 2&7

• December 10

– Project final demonstrations

– Project final reports due

CS 493/790(X) - Lecture 1 13

Optional Textbooks

• Basic topics

– The Robotics Primer, 2001. Author: Maja

Mataric'

– Will be available in draft form at the bookstore

• Advanced topics

– Behavior-Based Robotics, 2001.

Author: Ron Arkin

– Available at the library

CS 493/790(X) - Lecture 1 14

Optional Textbooks

• Lego Robots

– Robotic Explorations: An Introduction to

Engineering Through Design, 2001. Author:

Fred G. Martin

CS 493/790(X) - Lecture 1 15

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

CS 493/790(X) - Lecture 1 16

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 493/790(X) - Lecture 1 17

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 493/790(X) - Lecture 1 18

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 493/790(X) - Lecture 1 19

Robots: Alternative Terms

• UAV

– unmanned aerial vehicle

• UGV (rover)

– unmanned ground vehicle

• UUV

– unmanned undersea vehicle

CS 493/790(X) - Lecture 1 20

An assortment of robots…

CS 493/790(X) - Lecture 1 21

Anthropomorphic Robots

CS 493/790(X) - Lecture 1 22

Animal-like Robots

CS 493/790(X) - Lecture 1 23

More Robots

Maron-1: Fujitsu Robovie-M: VStone

CS 493/790(X) - Lecture 1 24

Humanoid Robots

Robonaut (NASA) Sony Dream Robot

Asimo (Honda)

DB (ATR)

QRIO

CS 493/790(X) - Lecture 1 25

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

CS 493/790(X) - Lecture 1 26

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

CS 493/790(X) - Lecture 1 27

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 493/790(X) - Lecture 1 28

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

CS 493/790(X) - Lecture 1 29

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 493/790(X) - Lecture 1 30

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”

CS 493/790(X) - Lecture 1 31

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 493/790(X) - Lecture 1 32

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?

CS 493/790(X) - Lecture 1 33

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?

CS 493/790(X) - Lecture 1 34

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 493/790(X) - Lecture 1 35

Background Readings

• F. Martin: Sections 1.1, 1.2.3

• M. Matarić: Chapters 1, 3