Slide 1
University of Maryland at College Park
Robotics
CMSC 818N( Spring 2020)
ENEE 769M (Spring 2020)
Dinesh Manocha
dm@cs.umd.edu
http://www.cs.umd.edu/class/spring2019/cmsc818N/
*
University of Maryland at College Park
Instructor: Dinesh Manocha
Professor in CS & ECE department @ UMd
Recently moved to UMd from North Carolina
Email – dm@cs.umd.edu (best way to reach me)
Office Hours: TBD
Worked in robot planning, multi-agent simulation for 30 years
Many technologies by my group are used in ROS, robot software simulation
10 recent PhD/postdocs are working in Autonomous Driving Industry (active collaboration)
University of Maryland at College Park
Teaching Assistant
Adarsh Jagan Sathyamoorthy
Ist Year ECE PhD student
Email – asathyam@cs.umd.edu
Office Hours : TBD
Venue: TBD
Email to set up extra appointments.
University of Maryland at College Park
Course Topics
Rigid Body Transformations
Kinematics (Forward, Inverse Kinematics)
Basics of Robot Control
Dynamics (Rigid Body, Articulated Dynamics)
Configuration space and Geometric Concepts
Collision Detection
Motion Planning
Multi-Agent systems and their collision avoidance methods
Fundamentals of Perception
Autonomous Driving
Swarms
Reading:
Textbooks: Robot Modeling and Control by Spong et. al, Modern Robotics by Lynch and Park, Planning Algorithms by LaValle. (All books available as PDFs online.)
Pointers to notes and online materials.
Textbooks: Spong, Modern Robotics?
*
University of Maryland at College Park
Course Topics: Not Covered
Grasping and Manipulation
SLAM
Robot & Learning
Robotic vision
Medical robots
Drones
Other courses at UMD (CS, Engineering, robotics program) cover these topics
University of Maryland at College Park
Background
Data Structures (CMSC 420 or equivalent)
Programming (CMSC 106 or equivalent)
Numeric Analysis (CMSC466 or equivalent)
Linear Algebra (Math 240 or equivalent)
We will use concepts from these courses in our lectures, homework and midterm/final.
*
University of Maryland at College Park
Grading Policy
Class Participation and Quiz – 10%
There will be surprise quizzes at the end of some sessions.
Assignments – 40%
Mid-Term – 20%
Final Exam or Course Project – 30%
Absolute Grading (final grade determination)
University of Maryland at College Park
Assignments
7 Assignments (estimated)
Rigid Body Transformations
Kinematics
Control and Dynamics
C-Space and C-Obstacle
Motion Planning
Multi-agent planning
Perception
The assignments will be a combination of problem sets and programming exercises.
Assignments will be released every 2 weeks.
Submit soft copies of your solutions on Canvas.
The programs can be implemented in MATLAB (Preferred), C++, or Python.
University of Maryland at College Park
Final Exam vs. Course Project
Option: course project or an in-class final exam
Project can be on any topic related to robotics
A proposal for the project must be submitted by Mar 1st for review
University of Maryland at College Park
Course Project
Any topic related to robotics (quite broad)
Feel free to talk to instructor/TA about possible ideas
Should have some novelty to it
Great way to explore new research areas
Many course project turn into papers or PhD thesis
Can work by yourself or in small groups (2-3)
Start thinking now of possible course project
*
University of Maryland at College Park
What is a robot?
Origin of the word “robot”
Czech word “robota”– labor, “robotnik” – workman
1923 play by Karel Capek – Rossum’s Universal Robots
Definition: (no precise definition yet)
Webster’s Dictionary
An automatic device that performs functions ordinarily ascribed to human beings washing machine = robot?
Robotics Institute of America
A robot (industrial robot) is a reprogrammable, multifunctional manipulator designed to move materials, parts, tools, or specialized devices, through variable programmed motions for the performance of a variety of tasks.
*
University of Maryland at College Park
Origin of the Word Robot
On January 25, 1921 the Czech play Rossum’s Universal Robots premiered, entering the word into the Science Fiction vocabulary.
*
University of Maryland at College Park
What is a robot?
By general agreement, a robot is:
A programmable machine that imitates the actions or appearance of an intelligent creature–usually a human.
To qualify as a robot, a machine must be able to:
1) Sense and perceive: get information from its surroundings
2) Carry out different tasks: Locomotion or manipulation, do something physical–such as move or manipulate objects
3) Be re-programmable: can do different things
4) Function autonomously and/or interact with human beings
*
University of Maryland at College Park
Classic Robots: Manipulators
Mobile Manipulators
*
University of Maryland at College Park
Types of Robots
Humanoid
Legged robots
Underwater robots
Wheeled mobile robots
Aerial Robots
Locomotion
*
University of Maryland at College Park
Why Use Robots: Traditional Applications
Increase product quality
Superior Accuracies (thousandth of an inch, wafer-handling: micro inch)
Repeatable precision Consistency of products
Increase efficiency
Work continuously without fatigue
Need no vacation
Increase safety
Operate in dangerous environments
Need no environmental comfort – air conditioning, noise protection, etc.
Reduce Cost
Reduce scrap rate
Lower in-process inventory
Lower labor cost
Reduce manufacturing lead time
Rapid response to changes in design
Increase productivity
Value of output per person per hour increases
*
University of Maryland at College Park
Robot History
1961
George C. Devol obtains the first U.S. robot patent, No. 2,998,237.
Joe Engelberger formed Unimation and was the first to market robots
First production version Unimate industrial robot is installed in a die-casting machine
1962
Unimation, Inc. was formed, (Unimation stood for “Universal Automation”)
*
University of Maryland at College Park
Robot History
1968
Unimation takes its first multi-robot order from General Motors
1966-1972
“Shakey,” the first intelligent mobile robot system was built at Stanford Research Institute, California
*
Memory
Reprogramable
Perform different tasks
University of Maryland at College Park
Robot History: Late 60s, Early 70s
Shakey (Stanford Research Institute)
the first mobile robot to be operated using AI techniques
Simple tasks to solve:
To recognize an object using vision
Find its way to the object
Perform some action on the object (for example, to push it over)
http://www.frc.ri.cmu.edu/~hpm/book98/fig.ch2/p027.html
*
University of Maryland at College Park
Shakey
*
Youtube link embedded.
University of Maryland at College Park
Robot History
1969
Robot vision, for mobile robot guidance, is demonstrated at the Stanford Research Institute.
Unimate robots assemble Chevrolet Vega automobile bodies for General Motors.
1970
General Motors becomes the first company to use machine vision in an industrial application. The Consight system is installed at a foundry in St. Catherines, Ontario, Canada.
*
University of Maryland at College Park
Robot History
1978
The first PUMA (Programmable Universal Machine for Assembly) robot is developed by Unimation for General Motors.
1981
IBM enters the robotics field with its 7535 and 7565 Manufacturing Systems.
1983
Westinghouse Electric Corporation bought Unimation, Inc., which became part of its factory automation enterprise. Westinghouse later sold Unimation to Staubli of Switzerland.
*
University of Maryland at College Park
Current Robot (AI) Era
*
HRP4C humanoid
da vinci
Snake robot
Swarm robots
MEMS bugs
Big dog
University of Maryland at College Park
Current Robot (AI) Era
*
University of Maryland at College Park
Robotics & Science Fiction
*
The Jetsons
Google car
Berkeley
University of Maryland at College Park
Robot: Current Trends
4 Multi-Billion Dollars Industries
Warehouse Automation (Amazon, Walmart)
Autonomous Cars (every car + computer company)
Drones (delivery, surveillance)
Personal home robots (Google, Samsung, Amazon, etc.)
University of Maryland at College Park
Smart Robots or Agents
Autonomous agents that sense, plan, and act in real and/or virtual worlds
Algorithms and systems for representing, capturing, planning, controlling, and rendering motions of physical objects
Applications:
Manufacturing
Mobile robots
Computational biology
Computer-assisted surgery
Digital actors
*
Robot System: Components
F: Feedforward
C: Control
A: Actuator
S: Sensor
S+: Sensor post-processing
*
F
C
A
S
desired task
S+
desired trajectory
movement
F
motion planning and trajectory generation
Eventually, the trajectory would be translated into low level instructions to be executed by the electronic and mechanical devices of the robot.
*
Robot Motion Planning
Given initial setting A of the robot, find a valid or optimal trajectory for the robot to reach goal B
Collision-free
Other constraints (balance)
Optimal criteria (shortest path, min-time …)
*
Initial A
Goal B
Explain right figure. The optimal criteria requires robots to avoid the winding path as shown in the figure.
For this trajectory, we have some requirement.
First, it should not collide with any obstacles in the environment.
Second, it should satisfy some constraints related with the specific applications. For example, for humanoid robot, the robot must keep balanced, i.e. it should not fall down onto the ground
Finally, we hope the trajectory could be optimal under certain criteria. For example, it should follow a shortest path instead of the ridiculously long and winding path as shown in the figure in the right side. For industrial robot, a trajectory which takes the minimal time is preferred.
*
Motion Planning
Motion planning (a.k.a., the “navigation problem”, the “piano mover’s problem”) is a term used in robotics for the process of detailing a task into discrete motions. (Wikipedia)
University of Maryland at College Park
Basic Motion Planning Problem
Statement:
Compute a collision-free path for an object (the robot) among obstacles subject to CONSTRAINTS
Inputs:
Geometry of robot and obstacles
Kinematics of robot (degrees of freedom)
Initial and goal robot configurations (placements)
Outputs:
Continuous sequence of collision-free robot configurations connecting the initial and goal configurations
*
Design for Manufacturing/Servicing
General Electric
General Motors
General Motors
*
Assembly Planning and Design of Manufacturing Systems
*
Application: Checking Building Code
*
Cable Harness/ Pipe design
*
Humanoid Robot
[Kuffner and Inoue, 2000] (U. Tokyo)
*
Digital Actors
A Bug’s Life (Pixar/Disney)
Toy Story (Pixar/Disney)
Tomb Raider 3 (Eidos Interactive)
Final Fantasy VIII (SquareOne)
The Legend of Zelda (Nintendo)
Antz (Dreamworks)
*
The Artist’s perspective on animated characters
Animation Variables (AVARS)
FEATURES:
Kinematic hierarchy of geometric primitives
Moving joints change shape and/or position
Situated in some scenario or storyline
Graphical representation of a “personality”
Top 3 movies and video games
Contrasts the different approaches to motion:
MOVIES: off-line ray-tracing hand-animated
GAMES: real-time polygon rend. Captured or hand-animated canned motions + real-time blending, warping, IK
If you have a good algorithm for generating motion for off-line animation, it will apply to real-time games in 10-15 years (if you believe Moore’s law)
Motion Planning for Digital Actors
Manipulation
Sensory-based locomotion
*
Application: Computer-Assisted Surgical Planning
*
Radiosurgical Planning
Cyberknife
*
Study of the Motion of Bio-Molecules
Protein folding
Ligand binding
*
Application: Prediction of Molecular Motions
*
University of Maryland at College Park
DARPA Grand Challenge
Planning for a collision-free 132 mile path
in a desert (2007)
Things have come a long way in the last 12 years!
*
University of Maryland at College Park
Autonomous Driving:
Today (left), Challenges (right)
*
Autonomous driving has generating success.
Many companies are beginning to show technologies for autonomous driving
We have tech to drive highways and even some urban conditions, but there are still numerous scenarios where algorithms cannot yet perform
Videos: left – tesla / waymo driving, right – worst case traffic video (either the india video or something similar)
*
University of Maryland at College Park
Robot Delivery: Drones and Groups
*
Autonomous driving has generating success.
Many companies are beginning to show technologies for autonomous driving
We have tech to drive highways and even some urban conditions, but there are still numerous scenarios where algorithms cannot yet perform
Videos: left – tesla / waymo driving, right – worst case traffic video (either the india video or something similar)
*
University of Maryland at College Park
Warehouse Automation: Robots + Human
*
https://www.youtube.com/watch?v=JXkMevbjga4
Autonomous driving has generating success.
Many companies are beginning to show technologies for autonomous driving
We have tech to drive highways and even some urban conditions, but there are still numerous scenarios where algorithms cannot yet perform
Videos: left – tesla / waymo driving, right – worst case traffic video (either the india video or something similar)
*
University of Maryland at College Park
Motion Planning @ GAMMA-UMD
Robot Motion Planning
https://gamma.umd.edu/researchdirections/motionplanning/mp
Multi-Agent Simulation
https://gamma.umd.edu/researchdirections/crowdmultiagent/cm
*