| Date | Lecture | Office Hours | Project/Assignment | Hand-in |
---|
Week 1 | Mon 1/14 | Course overview and introduction to Cozmo. | | Reading: Ten Big Ideas in Robotics | |
Wed 1/16 | Robot software architecture and Python control structure. | | Read the slides from Beazley's 2009 coroutines lecture. Somehwat dated but still really good. | |
Fri 1/18 | Lab 1: Meet Cozmo! | | | |
Week 2 | Mon 1/21 | Dr. Martin Luther King Holiday. No classes today. | | | |
Wed 1/23 | Finite state machines. | | | |
Fri 1/25 | Lab 2: Odometry | | Finish Lab 2 for homework. | |
Week 3 | Mon 1/28 | More state machines. Intro to particle filters. | | Try out particle_filter_demo and pfdemo.py. | |
Wed 1/30 | Particle filters. No class today; watch the video instead. | | If you would like to learn more, see these excellent lectures on probabilistic robotics. | Can Cozmo do this? |
Fri 2/1 | Lab 3: Particle filters. | | Finish Lab 3 for homework. | Lab 2 due. |
Week 4 | Mon 2/4 | 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/6 | The world map. | | Visualizing quaternions video series. Play with quaternions.online (click to begin). | |
Fri 2/8 | Lab 4: Kinematics. | | Finish Lab 4 for homework. | Lab 3 due. |
Week 5 | Mon 2/11 | More kinematics, world maps, and SLAM Videos: Robot Navigation Using SLAM by Ibrahim Musba. SLAM A 00 by Claus Brenner. | | | |
Wed 2/13 | Path planning algorithms. RRT Animation Gallery. Videos: A* Search, Tekkotsu hand/eye planner Intro to OpenCV. Demo: CircleWatcher.py | | Browse OpenCV Python Tutorials, specifically on contours. | |
Fri 2/15 | Lab 5: Cozmo's path planner, and intro to SLAM. | | Finish Lab 5 for homework. | Lab 4 due. |
Week 6 | Mon 2/18 | 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 | | Matplotlib usage. Matplotlib tutorial info. | |
Wed 2/20 | Speech generation and recognition. Demo: Speech1.fsm. Winograd's SHRDLU system, and a modern version. | | Read about SHRDLU. Review regular expressions in Python. | |
Fri 2/22 | Lab 6: RRTs, and color class learning. | | Finish Lab 6 for homework. | |
Week 7 | Mon 2/25 | Backpropagation learning. Demos: linfit.py, approxfn .py, approxfn2 .py, approxfn3 .py, mnist1 .py | | | |
Wed 2/27 | Convolutional networks. Demos: mnist1.py, mnist2.py, mnist3.py | | Read the demo source code. | |
Fri 3/1 | Lab 7: PyTorch and Neural Networks. | | | |
Week 8 | Mon 3/4 | Code Lab. | | Try out Scratch 3.0. | |
Wed 3/6 | 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/8 | Mid-semester break. No class/lab. | | | |
Week 9 | Mon 3/11 | Spring break: no class. | | | |
Wed 3/13 | Spring break: no class. | | | |
Fri 3/15 | Spring break: no class. | | | |
Week 10 | Mon 3/18 | Machine learning in Python: scikit-learn. Demo: emdemo.py Demo: RGBClusterer.fsm, RGBClusterer.py | | | |
Wed 3/20 | Manipulation, with videos. | | | |
Fri 3/22 | Lab 8: using the GPU with Cozmo. | | | |
Week 11 | Mon 3/25 | Lab 9: auto-encoder networks. | | | |
Wed 3/27 | Lab 10: cube auto-encoder. | | | |
Fri 3/29 | Continuation of Lab 8. | | | Lab 8 due. |
Week 12 | Mon 4/1 | Continuation of labs 8 and 10. | | Lab closed from 6pm Mon. until 1pm Wed. | |
Wed 4/3 | Lab | | | |
Fri 4/5 | Lab 12: Cozmo's Magic Dream House | | Finish Lab 10. | |
Week 13 | Mon 4/8 | Discussion of Final Project Ideas. | | | |
Wed 4/10 | Work on final projects. | | | |
Fri 4/12 | No lab: Spring Carnival. | | | |
Week 14 | Mon 4/15 | Work on final projects. | | | Lab 13 due |
Wed 4/17 | Work on final projects. | | | |
Fri 4/19 | Work on final projects. | | | |
Week 15 | Mon 4/22 | Work on final projects. | | | |
Wed 4/24 | Work on final projects. | | | |
Fri 4/26 | Work on final projects. | | | |
Week 16 | Mon 4/29 | Work on final projects. | | | |
Wed 5/1 | Work on final projects. | | | |
Fri 5/3 | Public demo of your projects. | | | Final project hand-in |