Cognitive Robotics Schedule
Spring 2020
Zoom link: https://cmu.zoom.us/j/308196081
Date Lecture Office Hours Project/Assignment Hand-in
Week 1 Mon 1/13 Course overview and introduction to Cozmo.
Videos: Chiara piano, Chiara chess, Calypso for Cozmo
Reading: Ten Big Ideas in Robotics
Wed 1/15 Robot software architecture and Python control structure. Read the slides from Beazley's 2009 coroutines lecture. Somehwat dated but still really good.
Fri 1/17 Lab 1: Meet Cozmo!
Week 2 Mon 1/20 Dr. Martin Luther King Holiday. No classes today.
Wed 1/22 Finite state machines.
Fri 1/24 Lab 2: Odometry Finish Lab 2 for homework.
Week 3 Mon 1/27 More state machines. Intro to particle filters. Try out particle_filter_demo and pfdemo.py.
Wed 1/29 Particle filters. If you would like to learn more, see these excellent lectures on probabilistic robotics. Can Cozmo do this?
Fri 1/31 Lab 3: Particle filters. Finish Lab 3 for homework. Lab 2 due.
Week 4 Mon 2/3 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
Wed 2/5 The world map. Visualizing quaternions video series.
Play with quaternions.online (click the bars to change rotation).
Fri 2/7 Lab 4: Kinematics. Finish Lab 4 for homework. Lab 3 due.
Week 5 Mon 2/10 More kinematics, world maps, and SLAM
Videos: Robot Navigation Using SLAM by Ibrahim Musba. SLAM A 00 by Claus Brenner.
Wed 2/12 Path planning algorithms.
RRT Animation Gallery.
Videos: A* Search, Tekkotsu hand/eye planner
Fri 2/14 Lab 5: Cozmo's path planner, and intro to SLAM. Finish Lab 5 for homework. Lab 4 due.
Week 6 Mon 2/17 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.
Wed 2/19 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.
Fri 2/21 Lab 6: Vision and speech recognition. Finish Lab 6 for homework.
Week 7 Mon 2/24 Backpropagation learning.
Demos: linfit.py, approxfn .py, approxfn2 .py, approxfn3 .py, mnist1 .py
Wed 2/26 Convolutional networks.
Demos: mnist1.py, mnist2.py, mnist3.py
Read the demo source code.
Fri 2/28 Lab 7: PyTorch and Neural Networks.
Week 8 Mon 3/2 Code Lab. Try out Scratch 3.0.
Wed 3/4 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.
Fri 3/6 Mid-semester break. No class/lab.
Week 9 Mon 3/9 Spring break: no class.
Wed 3/11 Spring break: no class.
Fri 3/13 Spring break: no class.
Week 10 Mon 3/16 No class. Transitioning to Zoom.
Wed 3/18 Machine learning in Python: scikit-learn.
Demo: emdemo.py
Demo: RGBClusterer.fsm, RGBClusterer.py
Fri 3/20 Remote use of REL machines. ALVINN.
Week 11 Mon 3/23 Manipulation, with videos.
Wed 3/26 ALVINN (continued)
Fri 3/27 Lab 8: ALVINN and Calypso.
Week 12 Mon 3/30 Lab: TBD
Wed 4/1 Lab: TBD
Fri 4/3 Lab: TBD
Week 13 Mon 4/6 Discussion of Project Ideas.
Wed 4/8 Work on final projects.
Fri 4/10 Work on final projects
Week 14 Mon 4/13 Work on final projects.
Wed 4/15 Work on final projects.
Fri 4/17 Work on final projects.
Week 15 Mon 4/20 ImageNet and transfer learning..
MobileNet demo.
Wed 4/22 Work on final projects.
Fri 4/24 Work on final projects.
Week 16 Mon 4/27 Work on final projects.
Wed 4/29 Work on final projects.
Fri 5/1 Demos of your projects. Final project hand-in due by Friday May 8.