Top Banner
From Personal Computers to Personal Robots Challenges in Computer Science Education Nikolaus Correll Department of Computer Science University of Colorado at Boulder
36

From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Mar 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

From Personal Computers to Personal Robots

Challenges in Computer Science Education

Nikolaus Correll

Department of Computer Science University of Colorado at Boulder

Page 2: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Mechanism vs. Computer

Unimate (1961) IBM 704 (1964)

Page 3: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

From Personal Computers to Personal Robots

Computers + Sensors & Actuators -> Personal Robots <- Computers & Sensors + Actuators

Page 4: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Driver #2: Sensors

Page 5: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

State of the Art

Mobility (1st semester)

Manipulation (2nd semester)

KIVA Systems Rethink Robotics

Orbotix Modular Robotics

Page 6: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Technical Challenges

• Uncertainty (sensing/actuation) requires shift from deterministic to probabilistic reasoning

• Robots are systems-of-systems consisting of hundreds heterogeneous, distributed computing elements

• Computing interactions with the world requires understanding of the physical world’s dynamics

• Play and backlash in mechanism • 7 micro-controllers + 1 PC • Non-trivial mass to accelerate

=> Need “Robotics” classes within CS curriculum

Page 7: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Technical Challenges

• Uncertainty (sensing/actuation) requires shift from deterministic to probabilistic reasoning

• Robots are systems-of-systems consisting of hundreds heterogeneous, distributed computing elements

• Computing interactions with the world requires understanding of the physical world’s dynamics

• Play and backlash in mechanism • 7 micro-controllers + 1 PC • Non-trivial mass to accelerate

=> Need “Robotics” classes within CS curriculum

Artificial Intelligence

Natural Language Processing

Computer Vision

Software Engineering

Security

Cyber-Physical Systems

Human-Computer Interaction Programming Languages

Robotics

Computer Graphics

Page 8: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Educational Challenges

• Scalability

• Assessment

• Complexity

$1k

$250k

vs.

Artificial Intelligence

Natural Language Processing

Computer Vision

Software Engineering

Security

Cyber-Physical Systems

Human-Computer Interaction Programming Languages

Robotics vs.

Page 9: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Approach

• Tight integration of simulation and real world experimentation

• Systematic experimentation and portfolio-based assessment

• Goal-based learning inspired by industry drivers

Page 10: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

1st Semester: Robotic Maze Competition

• Find “chargers” in the environment before you run out of power

• Tactics – Random Walk

– Wall following

– Simultaneous Localization and Mapping

• Simulator can control real robots via Bluetooth based on real-time sensor data

Page 11: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Locomotion and Manipulation

• Coordinate frames • Trigonometry • Linear Algebra

How does wheel motion determine my x-y position and how do I have to move my wheels to get somewhere?

Page 12: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Path Planning

Dijkstra A* RRT

Whats the shortest path from A to B if I know the map?

Page 13: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Problem: Uncertainty

r

f

rf v=rf’ f’

Problem: f’ subject to uncertainty. Position estimate probabilistic. How to improve it?

Page 14: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Beyond Odometry: Image Processing

Convolution-based Filtering Thresholding

Page 15: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Feature extraction

http://en.wikibooks.org/wiki/Cyberbotics'_Robot_Curriculum/Cognitive_Benchmarks

Page 16: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Feature Extraction: Line detection

• Least-squares estimate

• Split-and-Merge

• RANSAC

Page 17: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Quantifying Noise

Normal distribution Multi-variate Gaussian

Two noisy observations can be fused to a single observation with lesser variance!

Page 18: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Error Propagation

• Key ideas

– Every sensor reading has a variance

– Variances carry forward into measurements

– Variances are weighted by their impact on the measurement

Variance of distance and angle to line from many uncertain sensor readings.

Variance of position with accumulated odometry error.

Page 19: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Markov Localization

• Bayes Rule

• Perception update:

• Action update:

Page 20: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Kalman Filter

• Like Markov Localization, but continuous states (Normal distributions)

• Key idea: – Predict what robot should

see at the estimated position

– Compare with what it does see

– Calculate in-between position weighted by variances

Page 21: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

EKF SLAM (Simultaneous Localization and Mapping)

• Kalman Filter

– Position/Orientation

– Features in the environment

• Re-observation corrects all features

Page 22: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Summary

0: Nothing 2: Get Basic Idea 4: Very Confident

N=21

Page 23: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

2nd Semester: Manipulation Challenge

• System design around manipulation

• Previous editions

– Robot Gardening

– “Robots building Robots” (ongoing)

• Multi-year activities

Page 24: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Advanced Robotics

• In-depth treatment of “Intro” topics – Kinematics of differential wheel -

> Kinematics of Cars

– Forward Kinematics -> Denavit-Hartenberg scheme

– Inverse kinematics of simple arms -> General inverse kinematics + numerical methods

– EKF-based SLAM -> Graph based SLAM

– RRT -> Sampling-based Motion Planning

Page 25: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

New hardware

Page 26: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

ROS

• Message passing system

• Visualization / Simulation

• Library

– Hardware drivers

– Algorithms

• Virtual machine for download

http://correll.cs.colorado.edu/clam/?page_id=21

Page 27: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

New Challenges

• Point clouds (RGB + depth) – Iterative Closest Point

algorithm

– SIFT features

– Loop Closure (SLAM)

• Grasping – What makes a good grasp?

(Couloumb’s Friction Law)

– How to plan for a good grasp?

Page 28: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

New Tasks

• Weekly design reviews

• Write a paper – Research hypothesis

– Heilmeier questions

– Introduction, Material & Methods, Results, Discussion, Conclusion

• Perform meaningful experiments – Null-hypothesis on distributions

– Test significant difference between distributions

– Make a significant number of true-false test

Page 29: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Summary

0: Nothing 2: Get Basic Idea 4: Very Confident

N=10

Page 30: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Class Debates

• Robots put humans out of work, Robots should be allowed to drive cars, … • Argue Oxford style, 10 Pro, 10 Contra, backed up by technical arguments

Introduction to Robotics, N=18

Page 31: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Peer-to-Peer Learning in Projects

2008 iteration of “Advanced Robotics” (MIT), N=12

Page 32: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Scalability

• Approach – Simulation for

many – Milestones – Experiments on

shared platform

• Mainly computing challenges

• Hardware experimentation needs to be requirement

Page 33: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Assessment

• Math-based homework, mid-term and final

• Systematic, experimental data – Average distance traveled – Average computation time – …

• Final presentation / competition/ research paper

• Still unclear how to specify scope of projects

• Portfolio-based assessment with itemized point system

Page 34: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Complexity

• Approach – Goal-based approach – Focus exclusively on

software/algorithms – Online materials hyperlink to

research papers and wikipedia pages

• Breadth vs. Depth – Deeper learning in the Intro-

class – Intro topics more cohesive

Page 35: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

Summary

• CSCI3302 and CSCI4302/5302 (pending) established

• All course materials online, tools available via Roadnarrows.com, Cyberbotics.com (free for “Ratslife”), ros.org

• Lots of work down the line – Reliable simulation environments – Improved assessment structure – Deeper learning in advanced robotics – Improve debate quality – ….

Page 36: From Personal Computers to Personal Robotscorrell.cs.colorado.edu/wp-content/uploads/From... · From Personal Computers to Personal Robots Challenges in Computer Science Education

References

• N. Correll, R. Wing, D. Coleman (2012): A One Year Introductory Robotics Curriculum for Computer Science Upperclassmen. IEEE Transactions on Education, 2012. To appear.

• N. Correll, D. Rus (2010): Peer-to-Peer Learning in Robotics Education: Lessons from a Challenge Project Class. ASEE Computers in Education Journal, 1(3):60-66, 2010.

• http://correll.cs.colorado.edu