Cognitive Robotics Schedule
Spring 2018
Date Lecture Office Hours Project/Assignment Hand-in
Week 1 Mon 1/15 Dr. Martin Luther King Holiday. No classes today.
Wed 1/17 Course overview and introduction to Cozmo. Reading: Ten Big Ideas in Robotics
Fri 1/19 Lab 1: Meet Cozmo!
Week 2 Mon 1/22 Robot software architecture and Python control structure. Read the slides from Beazley's 2009 coroutines lecture. Somehwat dated but still really good.
Wed 1/24 Finite state machines.
Fri 1/26 Lab 2: Odometry Finish Lab 2 for homework.
Week 3 Mon 1/29 More state machines. Intro to particle filters. Try out particle_filter_demo and
Wed 1/31 Particle filters. If you would like to learn more, see these excellent lectures on probabilistic robotics. Can Cozmo do this?
Fri 2/2 Lab 3: Particle filters. Finish Lab 3 for homework. Lab 2 due.
Week 4 Mon 2/5 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/7 The world map. Play with
Fri 2/9 Lab 4: Kinematics. Finish Lab 4 for homework. Lab 3 due.
Week 5 Mon 2/12 More kinematics, world maps, and SLAM
Videos: Robot Navigation Using SLAM by Ibrahim Musba. SLAM A 00 by Claus Brenner.
Wed 2/14 Path planning algorithms.
RRT Animation Gallery.
Videos: A* Search, Tekkotsu hand/eye planner
Fri 2/16 Lab 5: Cozmo's path planner, and intro to SLAM. Finish Lab 5 for homework. Lab 4 due.
Week 6 Mon 2/19 Intro to OpenCV. Demo: Browse OpenCV Python Tutorials, specifically on contours.
Wed 2/21 OpenCV part 2. Shape matching. Watershed algorithm (more info). Try the new CV_Canny and CV_Hough demos in cozmo_fsm/examples.
Fri 2/23 Lab 6: continuation of lab 5. Finish Lab 5/6 for homework.
Week 7 Mon 2/26 Matplotlib. Examples: PlotDrive.fsm and Histogram.fsm Matplotlib usage. Matplotlib tutorial info.
Wed 2/28 Speech generation and recognition. Demo: Speech1.fsm.
Winograd's SHRDLU system, and a modern version.
Review regular expressions in Python.
Fri 3/2 Lab 7: OpenCV.
Week 8 Mon 3/5 Code Lab. Try out Scratch 3.0.
Wed 3/7 Calypso for Cozmo. Watch Calypso videos: intro, and keep-away tutorial. Have a look at the Calypso Curriculum.
Fri 3/9 Mid-semester break. No class/lab.
Week 9 Mon 3/12 Spring break: no class.
Wed 3/14 Spring break: no class.
Fri 3/16 Spring break: no class.
Week 10 Mon 3/19 Review answers to past homework problems.
Wed 3/21 Machine learning in Python: scikit-learn.
Demo: RGBClusterer.fsm
Fri 3/23 Lab 8: machine learning.
Week 11 Mon 3/26 Lab 9: motion detection.
Wed 3/28 Lab 10: collision detection.
Fri 3/30 Lab 11: Multi-camera and multi-robot systems. Lab 8 due.
Week 12 Mon 4/2 Lecture: Manipulation. Lab closed from 6pm Mon. until 1pm Wed.
Wed 4/4 Lab 12: fun with quaternions.
Fri 4/6 Lab 13: Cube Manipulation. Labs 9 and 10 due.
Week 13 Mon 4/9 Discussion of Final Projects.
Wed 4/11 Work on final projects.
Fri 4/13 Work on final projects. Lab 12 due.
Week 14 Mon 4/16 Work on final projects. Lab 13 due
Wed 4/18 Work on final projects.
Fri 4/20 No lab: Spring Carnival.
Week 15 Mon 4/23 Work on final projects.
Wed 4/25 Work on final projects.
Fri 4/27 Work on final projects.
Week 16 Mon 4/30 Work on final projects.
Wed 5/2 Work on final projects.
Fri 5/4 Public demo of your projects. Final project hand-in due by Friday May 11.