CSCE 439/839: Robotics: Algorithms and Applications
Fall 2013


Dr. Carrick Detweiler
Computer Science and Engineering
220 Schorr Center
carrick _at_
Office Hours: Weds 1:30-2:30, schedule online, and by appointment.

Teaching Assistant

Sreeja Banerjee
sreeja _at_
Office Hours: Tuesday 1:30 - 2:30 in the Student Resource Center (SRC) and Wednesday 4:30 - 5:30 pm in Schorr 117A Lab.

Course Information

Lecture: Tues and Thurs 11:00am-12:15pm in Avery 112
Lab: arranged times in Schorr Center 117A

For detailed information on this course please see the course syllabus in html or pdf format.

Course Description

Robots play an increasingly important role in our lives, from assembling our cars and cell phones to vacuuming our rugs and flying recon missions. To create systems that work in the real world, the field of robotics requires robust theory and algorithms that are tightly integrated with hardware that is designed with engineering expertise.

This will be a hands-on, lab-based course where you will implement the algorithms you learn about in class on a small hovercraft that you will build in lab. You will learn the fundamentals of robotics, as well as the cutting-edge in robotics research. Topics covered will include: control, navigation and path planing, obstacle avoidance, manipulation and grasping, and robotic vision processing. By the end of the course you will know why robots are not yet folding our clothes and driving our cars, but you will also learn what is needed to make these possible in the future.

The hovercraft platform can control a variety of motors, transport reasonable payloads, and has numerous sensors including range finders and gyros. You will interface with the embedded system that controls the hovercraft by using learning to program in ROS (Robot Operating System; Programming will be in either C++ or Python, with an emphasis on C++. By the end of the course you will have a deep understanding of the design, programming, and interfacing of robot systems. This will prepare you for cutting edge careers in industry and research.


See the course schedule below for reading assignments and the general topics covered in the course. Unless otherwise noted, assignments are due via email to me before the start of class on the due date.

Assignment Start Date* Due Date
Course Survey Tues, Aug 27th Weds, Aug 28rd, 5pm
HW 1 (pdf,html**,code download)ROS Introduction Tues, Aug 27th Thurs, Sept 5th
Lab 1 (pdf,html**,code download)Hovercraft Construction and ROS Tues, Sept 10th Checkpoint: Tues, Sept 17th
Due: Thurs, Sept 26th
Lab 2 (pdf,html**)PID, Range Finders, and Tangent Bug Thurs, Sept 26th Checkpoint: Thurs, Oct 3rd
Due: Thurs, Oct 17th
HW 2 (pdf,html**,code download) Thurs, Oct 10th 5pm Fri, Oct 25th
Drop off paper copy in my office
Lab 3 (pdf,html**,code download) Weds, October 23 Checkpoint: Thurs, October 31
Due: Thurs, November 14
Final Project (pdf,html**) Tues, Nov 4, 2013 Proposal Draft Due: Tues, Nov 12, 2013
Proposal Due: Tues, Nov 19, 2013
Pre-presentation: Tues, Dec 3, 2013
Presentation and Demos: Tues and Thurs, Dec 10 and 12, 2013
Project Report Due: Fri, Dec 13, 2013

*Start dates are estimated for future assignments and are subject to change. Additional assignments will be added.
**Note html versions of assignments may lack some formatting or pictures found in the pdf version.

Course Books

G. Dudek and M. Jenkin, Computational Principles of Mobile Robotics, Cambridge University Press, 2nd Edition, 2010.

Course Schedule

Below is an approximate schedule of course topics. These are subject to change, assignments will be announced in class.

Week Topics Reading
Week 1, Aug 26 Introduction, ROS tutorials
Week 2, Sept 2
ROS, Fundamental Problems in Robotics CPMR 2.1-2.6
Week 3, Sept 9 ROS, Hovercraft
Week 4, Sept 16 Sensors CPMR 4.1-4.8
Week 5, Sept 23 PID Control, Configuration Space CPMR 6.1-6.2
Week 6, Sept 30 Reactive Control, Motion Planning CPMR 6.3
Week 7, Oct 7 Computer Vision, Visual Servo CPMR 5.1-5.4
Week 8, Oct 14 Stereo Vision, Feature and Landmark Detection CPMR 5.5-5.8
Week 9, Oct 21
Robot Localization CPMR 8.1-8.7
Week 10, Oct 28 Robot Design, Kinematics TBD
Week 11, Nov 4 Grasping TBD
Week 12, Nov 11 Data Fusion (Kalman, Markov, Monte Carlo Techniques) CPMR 4.9
Week 13, Nov 18 Simultaneous Localization and Mapping (SLAM) CPMR 9.1-9.4
Week 14, Nov 25
Final Project Topics
Week 15, Dec 2 Final Project Topics
Week 16, Dec 9 Final Project Topics

Last modified: Wed Oct 23 12:59:18 CDT 2013