Cognitive Robotics Schedule
Spring 2021
Zoom link: https://cmu.zoom.us/j/308196081
Office hours (Mandy): Thursdays 1:00 - 2:00 PM on Zoom
Date Lecture Office Hours Project/Assignment Hand-in
Week 1 Mon 2/1 Course overview and introduction to Cozmo.
Videos: Chiara piano, Chiara chess, Calypso for Cozmo
Reading: Ten Big Ideas in Robotics Video
Wed 2/3 Robot software architecture and Python control structure. Read the slides from Beazley's 2009 coroutines lecture. Somehwat dated but still really good. Video
Fri 2/5 No lab meeting this week. Browse the IEEE Automaton blog for photos and videos of cool robots.
Week 2 Mon 2/8 Finite state machines. Install cozmo-tools on your laptop. Video
Wed 2/10 More state machines. Intro to particle filters. Try out particle_filter_demo and pfdemo.py. Video
Fri 2/12 No lab meeting this week. Start on the Lab 2 programming problems.
Week 3 Mon 2/15 Special Monday Lab Session
Lab 1: Meet Cozmo!
Lab 2: Odometry
Wed 2/17 Particle filters. If you would like to learn more, see these excellent lectures on probabilistic robotics. Can Cozmo do this? Video
Fri 2/19 Lab 3: Particle filters. Finish lab 3 for homework.
Week 4 Mon 2/22 State machine misconceptions
Lecture: Kinematics.
Videos: Denavit-Hartenberg conventions, Towers of Hanoi, 3-dof arm IK, high-dof tentacle IK, tentacle manipulation
Resource: numpy quick start.
Read: Introduction to homogenous transformations and robot kinematics, by Jennifer Kay.
Watch: Denavit-Hartenberg Conventions
Lab 2 due
Wed 2/24 The world map. Visualizing quaternions video series.
Play with quaternions.online (click the bars to change rotation).
Video
Fri 2/26 Lab 4: Kinematics. Finish Lab 4 for homework. Lab 3 due.
Week 5 Mon 3/1 More kinematics, world maps, and SLAM
Videos:
Robot Navigation Using SLAM by Ibrahim Musba.
SLAM A 00 by Claus Brenner.
Lidar vs. Vslam for robot vacuums.
Video
Wed 3/3 Path planning algorithms.
RRT Animation Gallery.
Videos: A* Search, Tekkotsu hand/eye planner
Video
Fri 3/5 Lab 5: Cozmo's path planner, and intro to SLAM. Finish Lab 5 for homework. Lab 4 due.
Week 6 Mon 3/8 Intro to OpenCV. Demo: CircleWatcher.py
OpenCV part 2. Shape matching. Watershed algorithm (more info).
Files: water_coins.jpg, watershed.py.
Matplotlib. Examples: PlotDrive.fsm, PlotDrive.py; and Histogram.fsm Histogram.py
Browse OpenCV Python Tutorials, specifically on contours.
Matplotlib usage. Matplotlib tutorial info.
Video
Wed 3/10 Speech generation and recognition. Demo: Speech1.fsm.
Google Speech API demo
Winograd's SHRDLU system, and a modern version.
Read about SHRDLU.
Review regular expressions in Python.
Video
Fri 3/12 Lab 6: Vision and speech recognition. Finish Lab 6 for homework.
Week 7 Mon 3/15 Backpropagation learning.
No live lecture. Watch the video.
Demos: linfit.py, approxfn .py, approxfn2 .py, approxfn3 .py, mnist1 .py
Video
Wed 3/17 Autonomous driving with ALVINN.
ALVINN video
Read the demo source code. Video
Fri 3/19 Mid-semester break. No lab.
Week 8 Mon 3/22 Convolutional networks.
Demos: mnist1.py, mnist2.py, mnist3.py
Video
Wed 3/24 ImageNet and transfer learning.
MobileNet demo.
Video
Fri 3/26 Lab 7: PyTorch and Neural Networks. Lab 6 due.
Week 9 Mon 3/29 Code Lab. Try out Scratch 3.0. Video
Wed 3/31 Calypso for Cozmo. Watch Calypso videos: intro, and keep-away tutorial. Have a look at the Calypso Curriculum. Then read Computational thinking and mental models: from Kodu to Calypso. Video
Fri 4/2 Lab 8: Calypso and ALVINN. Lab 7 due.
Week 10 Mon 4/5 Break day: no classes.
Wed 4/7 Machine learning in Python: scikit-learn.
Extra slides on EM algorithm.
Demo: emdemo.py
Demo: RGBClusterer.fsm, RGBClusterer.py
Video
Fri 4/9 Discussion of Project Ideas.
Week 11 Mon 4/12 No live lecture. Watch the video.
Manipulation, with videos.
Lab 8 due Video
Wed 4/14 Work on fnial projects.
Fri 4/16 Spring Carnival. No lab.
Week 12 Mon 4/19 Work on final projects.
Wed 4/21 Work on final projects.
Fri 4/23 Work on final projects
Week 13 Mon 4/26 Work on final projects.
Wed 4/28 Work on final projects.
Fri 4/30 Work on final projects.
Week 14 Mon 5/3 Work on final projects.
Wed 5/5 Work on final projects.
Fri 5/7 Demos of your projects. Final project hand-in due by Sunday May 16.