CORC 3303: Exploring Robotics -...

44
CORC 3303: Exploring Robotics Lecture Unit A M. Meyer

Transcript of CORC 3303: Exploring Robotics -...

Page 1: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

CORC 3303: Exploring Robotics���

Lecture Unit A M. Meyer

Page 2: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

Topics:   0. Introduction to the course:

  Instructor website:   http://www.sci.brooklyn.cuny.edu/~meyer/CORC3303/index.htm

  CORC 3303 website:   http://agents.sci.brooklyn.cuny.edu/corc3303/index.html

  What is a robot?   Robots in society.   Robot Components.   Introduction to the course robots (RCX)

Page 3: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(0) Intro to this course   Class Rules:

1.  Respect 2.  Get your money's worth!

  Attendance:   This is a VERY hands on course. Attendance is

basically mandatory as you will NOT have the option of making up missed labs.

Page 4: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(0) Course Structure   6 Units (and each unit has):

  1 lecture   2 labs   1-2 assessment assignments.

  All labs will be hands-on sessions using the Lego RCX

  Assessment assignments will be:   written, take-home assignments ... AND/OR   written, in-class quizzes ... AND/OR   oral, in-class presentations ... AND/OR   oral, in class demonstrations

  Grading = 6 Unit Materials (10% each) + Final (30%) + Attendance & Participation (10%)

Page 5: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(1) What is a robot?   WE will be focusing on AUTONOMOUS mobile

robots. These robots can be considered "agents" in the physical world. So...

  Questions:   What is an agent?   What is autonomy (autonomous)?   What is a robot?

Page 6: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(1) Agents   Agent is derived from the Latin agere (to do). What

an "agent" is depends on the context of the domain.   Real estate agent. Secret agent.   Software agent, chemical agent.

  Commonality is that an "agent" is something that "acts" on behalf of some other entity to achieve a goal.

  Additional Constraint (Russel & Norvig, 32): Agent is "anything that can be viewed as perceiving it's environment through sensors and acting on it's environment through effectors."

Page 7: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

Example: Software Agent (Game)

Page 8: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(1) Autonomy (Autonomous)   To be autonomous means:

  to be independent   free of constraints   able to act on ones own initiative

  NO REMOTE CONTROL!!!! NO TELE-OPERATION!!!

  Autonomous Agent: An agent that while working on behalf of someone else, makes decisions on it's own, guided by feedback from it's sensors. We usually assume autonomy, when discussing agents and robots.

Page 9: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(1) Robot definition   "A re-programmable, multifunctional manipulator

designed to move material, parts, tools, or specialized devices through various programmed motions for the performance of a variety of tasks." Robot Institute of America, 1979.

  For our purposes a robot is:   an autonomous embodied agent.   an agent acting independently, whose environment is the

real world!   We ASSUME autonomy when we use the term robot.

Page 10: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(1) Our definition of a robot   A robot is an autonomous system (agent) which

exists in the physical world, that can sense its environment (including its own internal state) and act on its environment to achieve some goals.

  Robotics: The study of robots: their design, construction, capabilities and purpose.

Page 11: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) Robots in society (history +)   From the Czech word robota, which means "slave".   Word first appeared in a play in 1923 (Karel Capek,

"Rossum's Universal Robots")   "Human like" machines date back to the ancient Greeks.   Modern view of robots heavily shaped by Science

Fiction (books, films, television).   Foremost historical influence: Isaac Asimov   "I Robot" (1950) proposed 3 Laws of Robotics

1.  A robot may not injure a human being or, through inaction, allow a human being to come to harm.

2.  A robot must obey any orders given to it by human beings, except where such orders would conflict with the First Law.

3.  A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.

Page 12: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) Control Theory & Cybernetics   Control Theory: Is the mathematical study of the

properties of automated control systems (steam engines, airplanes, CPUs, motherboards)

  Cybernetics: Study of communication and control processes in both biological and artificial systems. Particular focus on interactions between mechanism/organism and it's environment.

Page 13: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) The first robots?

 Grey Walter's Tortoises (1940):  Simulated biological systems (biomemetic).  Simple machines with simple sensors could

 Find/follow/avoid light.  Track/Move/Avoid obstacles.  Feed(recharge batteries)

 Very simple reasoning (reactive control) could still lead to complex behavior (emergent phenomena).

 Early attempt at artificial life?

Page 14: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) 1st robots (continued)?

 Braitenberg's vehicles (1984):  Not actually built (by him) but proposed.  Again, used analog circuitry.  Biological mimicry.

 Photophilic, Photophobic  Social aggression, affection

 Excitatory and Inhibitory Connections  Stronger signals could induce stronger

response.  and vice versa

Page 15: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) Artificial Intelligence

 Field was "born" in 1956   Minksy, McCarthy, Newell, Simon   Proposes a model for "intelligence" requiring:

1.  Internal Model of the "world" 2.  Ability to "search" through possible solutions 3.  Planning and reasoning abilities to solve problems 4.  Symbolic thinking, and representation systems 5.  Hierarchical system organization 6.  Sequential program execution

 NOTE: Their priorities mirrored one understanding of how human minds function.

Page 16: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) Early AI inspired robots.   Shakey(1960's)

  Used a camera & bumper sensors to create a "model" of it's environment to help it create and execute plans.

  HILAIRE(1970's)   Camera, ultrasound sensors, laser rangefinder.   Widely used.

  CART(1977)   Vision based robot navigation (tough & slow)

  Rover(1983)   Camera and Ultrasound (platform advancement)

Page 17: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(2) Types of Robotic Control 1.  Reactive Control 2.  Hybrid Control 3.  Behavior Based

  We will go into these topics in detail later in the semester… but here is a question to get you started.

  Question: What kind of control system would you prefer if you are in a room with:

1.  A rapidly spreading fire. 2.  Several land-mines.

Page 18: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

End of Part I ���Unit A Lecture

 You are now assigned your first homework:

 Assessment Assignment #1 - Is it a Robot   Answer some questions.   Write a short essay.

 It is due at the start of UNIT B. No late

assignments will be accepted.

Page 19: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Why study robotics? Just for a moment, for fun, let's

imagine that your livelihood and life, depended on it.

1. The history of advanced machines, computers and robots is full of individuals who were "left behind" by the march of technology. Adapt or perish!

2. Robots are going to dramatically and irreversibly change the social and political realities of the world we live in... within your lifetime.

Page 20: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Touch Typists - RIP - Wang 1200 WPS (1974)

Page 21: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Financial Clerks - RIP - VisaCalc (1979)

Page 22: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Factory and Assembly Line Workers (Say hello to

the Dodo for me!)

But wait! Jobs with complex, materials are safe... right?

Page 23: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   What about jobs, that incorporate a wide variety of

different tasks, responsibilities? For that you would need something, well, like us.

Page 24: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   OK, but nobody is saying that robots are taking away

jobs from real humans... right?

Page 25: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   If a job is repetitive, and only requires basic direction

following and decision making skills, a robot can AND will wind up doing it. Corporations are profit driven.

Page 26: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   It's not just your livelihood that is at risk.

Page 27: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

Checkout: FY2009–2034 Unmanned Systems Integrated Roadmap

----- End of Side Note -----

Page 28: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Robot Components   Our robot definition: "A robot is an autonomous

system, which exists in the physical world, that can sense it's environment, and can act on it to achieve some goals."

  So our robot must have:   A body   Sensors   Effectors   A controller

Page 29: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Embodiment   In a software environment (ex: a game world) we get

to make the rules, and we can let an agent do anything we want. In the real world:

    The laws of physics apply (gravity, friction, entropy).   Objects can't overlap (collision avoidance).   Physical bodies have range, strength, distance and

shape limitations.   Physical bodies have time limitations.

Page 30: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Sensing  A robot gathers information about its state and

the environment via sensors.   Sensors can be classified as active and passive.   Typically a robot has a suite of sensors capable of

monitoring numerous features, such as battery level, odometry, and distance to nearby objects.

 With this information, the robot can determine its current state.   The robot can then use this state information to

decide what actions are appropriate.   In the end, all sensors, are converting a physical

property, into an electronic signal.

Page 31: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Types of Sensors

Page 32: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) State

 May be hidden, partially observable, observable (don't have perfect knowledge in the real world).

 May be discrete (0/1) or continuous (3.33 m/sec).

 State space refers to all of the possible values (may be infinite) that a systems state could be in.

 We can conceptualize both an internal and external state space.

 Robots may carry around a representation (model) of the external world, as part of their internal state.

Page 33: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Action

 Effectors enable a robot to take action, to change the state of the world (including its own position).

 Actuators are the underlying mechanisms (muscles, motors, solenoids) which do the actual work.

 Main action activities are:   Locomotion (moving around)   Manipulation (handling objects)

 Degrees of freedom: Refers to the range of motion, the dimensions in which a manipulator can move (more on this as well as Pitch, Yaw and Roll in Chap 6).

Page 34: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Controllers

 Robots utilize small, highly specialized computers to allow them to reason about their world.

 The kind of reasoning employed varies (reflexive versus "intelligence").

 We can talk about two kinds of intelligence in our controllers.   Reasoning (if/then)   Learning (this is what the past was like...

so...)

Page 35: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(4) Say Hello to the RCX   The Robotics Command Explorer is

the brain of the MINDSTORM.   The RCX is a small computer

(nickname "programmable brick").   It has:

  An IR transceiver   3 input ports (1-3)

  light sensors   bumpers

  3 output ports (A-C)  motors   lights

Page 36: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) For the Hardware Junkies

Page 37: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

(3) Programming   You will write your programs on

a computer and download them to the RCX using an IR transmitter ("communications tower").

  We will use Robolab a VPL (Visual Programming Language) IDE (integrated development environment) to write our programs.

  There are other program interfaces to the RCX.

Page 38: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

End of Part II ���Unit A Lecture

 You are now assigned your second homework:

 Assessment Assignment #2 - Big Dog  Read 2 case studies.  Answer some short questions

 It is due at the start of UNIT B. No late assignments will be accepted.

Page 39: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Halfway through this lecture, we looked at some of

the NEGATIVE aspects of the coming "robot revolution". Which leads us to the question: Do we even want robots?

  The answer is (at least for me) yes. Why? Because there are some jobs, some tasks, that we don't want human beings to have to do, because they are: 1.  DULL 2.  DIRTY 3.  DANGEROUS

Page 40: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

DULL

Page 41: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

DIRTY

Page 42: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

DANGEROUS

Page 43: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

ROBOT WARRIORS?

  Regarding Military and Police robots. What would a robot be programmed to do in the following situations?   Confronting a suspect in a dark doorway who is pointing

a black object at the robot.   Apprehending a suspect after a dangerous high-speed

car chase through city streets.   Confronting student protesters on a college campus, one

of whom has just hurled a bottle.   In a crisis situation, human beings often cease to be

rational beings and instead act based on their training, emotions and instincts. ("On Killing" by LT. Colonel Dave Grossman).   Consider: A robot won't care if you spit on it.

Page 44: CORC 3303: Exploring Robotics - sci.brooklyn.cuny.edugoetz/agents/courses/corc3303/notes/meyer... · CORC 3303 website: ... Assessment Assignment #1 - Is it a Robot Answer some questions.

-------- Side note: --------   Big picture: Robots and robotics pose both huge

problems and huge opportunities for all mankind. The question is, can we, as a species, adapt to this new and disruptive technology.

  Something fun to ponder: In the end, the earth, our planet and home, will be destroyed by the Sun. We are not built to survive/thrive in outer space. There are some who have suggested that Robots may well be the next step in our evolution...