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 pfdemo.py.
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.
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: CircleWatcher.py Browse OpenCV Python Tutorials, specifically on contours.
Wed 2/21 OpenCV part 2: line finding. Try the new CV_Canny and CV_Hough demos in cozmo_fsm/examples.
Fri 2/23 Lab 6: RRT path planning. Finish Lab 6 for homework. Lab 5 due.
Week 7 Mon 2/26 More on OpenCV:. CV_Contour, CV_GoodFeatyres, CV_OpticalFlow demos.
Wed 2/28 More on particle filters: error ellipses, SLAM. Slides.
Fri 3/2 Lab 7: Particle SLAM. Lab 6 due.
Week 8 Mon 3/5 More Particle SLAM. Intro to matplotlib. Read some matplotlib tutorial info.
Wed 3/7 Lab 8: meet in NSH 3206. Finish Lab 8 for Homework
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 Walls in the world map.
Wed 3/21 Speech recognition and natural language input.
Winograd's SHRDLU system.
Modern version.
Fri 3/23 Lab 9: world map, and speech control.
Week 11 Mon 3/26 Basic manipulation. Visual detection of chips.
Wed 3/28 Manipulation by pushing.
Manipulation with friction.
PID-Simulation.xls
Fri 3/30 Lab 10: Manipulation. Labs 8 and 9 due.
Week 12 Mon 4/2 Meet in lab.
SDK Examples. Custom markers.
Lab closed from 6pm Mon. until 1pm Wed.
Wed 4/4 Meet in lab.
Intro to the Pilot: P1Test.fsm Qube.py
Fri 4/6 Lab 11: Robot recognition.

Anki visiting.

Lab 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 11 due.
Week 14 Mon 4/16 Work on final projects.
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 May 10.