Cognitive Robotics Schedule
Spring 2017
Date Lecture Office Hours Project/Assignment Hand-in
Week 1 Mon 1/16 Dr. Martin Luther King Holiday. No classes today.
Wed 1/18 Course overview and introduction to Cozmo. Reading: Ten Big Ideas in Robotics
Fri 1/20 Lab 1: Meet Cozmo!
Week 2 Mon 1/23 Robot software architecture and Python control structure. Read the slides from Beazley's 2009 coroutines lecture. Somehwat dated but still really good.
Wed 1/25 Finite state machines.
Fri 1/27 Lab 2: Odometry Finish Lab 2 for homework.
Week 3 Mon 1/30 More state machines. Intro to particle filters. Try out particle_filter_demo and
Wed 2/1 Particle filters. If you would like to learn more, see these excellent lectures on probabilistic robotics. Can Cozmo do this?
Fri 2/3 Lab 3: Particle filters. Finish Lab 3 for homework. Lab 2 due.
Week 4 Mon 2/6 Kinematics.
Resource: numpy quick start.
Read: Introduction to homogenous transformations and robot kinematics, by Jennifer Kay.
Watch: Denavit-Hartenberg Reference Frame Layout
Wed 2/8 The world map.
Fri 2/10 Lab 4: Kinematics. Finish Lab 4 for homework. Lab 3 due.
Week 5 Mon 2/13 More kinematics, world maps, and SLAM
Videos: BreezySLAM demo by Simon Levy. SLAM A 00 by Claus Brenner.
Wed 2/15 Path planning algorithms.
RRT Animation Gallery.
Videos: A* Search, Tekkotsu hand/eye planner
Fri 2/17 Lab 5: Cozmo's path planner, and Not-SLAM. Finish Lab 5 for homework. Lab 4 due.
Week 6 Mon 2/20 Intro to OpenCV. Browse OpenCV Python Tutorials, specifically on contours.
Wed 2/22 OpenCV part 2: line finding. Try the new CV_Thresh and CV_Hough demos in cozmo_fsm/examples.
Fri 2/24 Lab 6: RRT path planning. Finish Lab 6 for homework. Lab 5 due.
Week 7 Mon 2/27 More on OpenCV:. CV_Contour, CV_GoodFeatyres, CV_OpticalFlow demos.
Wed 3/1 More on particle filters: error ellipses, SLAM. Slides.
Fri 3/3 Lab 7: Particle SLAM. Lab 6 due.
Week 8 Mon 3/6 More Particle SLAM. Intro to matplotlib. Read some matplotlib tutorial info.
Wed 3/8 Lab 8: meet in NSH 3206. Finish Lab 8 for Homework
Fri 3/10 Mid-semester break. No class/lab.
Week 9 Mon 3/13 Spring break: no class.
Wed 3/15 Spring break: no class.
Fri 3/17 Spring break: no class.
Week 10 Mon 3/20 Walls in the world map.
Wed 3/22 Speech recognition and natural language input.
Winograd's SHRDLU system.
Modern version.
Fri 3/24 Lab 9: world map, and speech control.
Week 11 Mon 3/27 Basic manipulation. Visual detection of chips.
Wed 3/29 Manipulation by pushing.
Manipulation with friction.
Fri 3/31 Lab 10: Manipulation. Labs 8 and 9 due.
Week 12 Mon 4/3 Meet in lab.
SDK Examples. Custom markers.
Lab closed from 6pm Mon. until 1pm Wed.
Wed 4/5 Meet in lab.
Intro to the Pilot: P1Test.fsm
Fri 4/7 Lab 11: Robot recognition.

Anki visiting.

Lab 10 due.
Week 13 Mon 4/10 Discussion of Final Projects.
Wed 4/12 Work on final projects.
Fri 4/14 Work on final projects. Lab 11 due.
Week 14 Mon 4/17 Work on final projects.
Wed 4/19 Work on final projects.
Fri 4/21 No lab: Spring Carnival.
Week 15 Mon 4/24 Work on final projects.
Wed 4/26 Work on final projects.
Fri 4/28 Work on final projects.
Week 16 Mon 5/1 Work on final projects.
Wed 5/3 Work on final projects.
Fri 5/5 Public demo of your projects. Final project hand-in due by May 10.
Taking Care of Yourself
Take care of yourself. Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.
All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.
If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.