CS 3630: Introduction to Perception and Robotics, Georgia Tech - Fall, 2017

When:           Tuesdays / Thursdays, 3:00-4:15 pm 
Where:          Ford ES&T L1205
Instructor:      Reza Ahmadzadeh
Office:            CCB 255
Office hours:  M 11:00-12:00, W 15:00-16:00

Teaching Assistants:
  • Yang Tian
  • Wade C. Sheldon
  • Sriram Ganesan
  • Jake Williams
  • Kaan Goksal
  • Felix Bai
  • Kelsey Hawkins


We will use T-Square for tracking grades and for lab submissions. All announcements, assignments, and discussions will be available through Piazza at https://piazza.com/gatech/fall2017/cs3630/home

Course Description
This course covers fundamental problems and leading solutions for computer and robot perception and action from the point of view of autonomous robot navigation. Topics are approached primarily from the point of view of autonomous robot navigation -- what and how must a robot perceive the world, and how can it use that information to navigate effectively.

The only formal prerequisite is CS1332 Data Structures & Algorithms. Prior knowledge of fundamentals of linear algebra and probability is also assumed.

Course Objectives
Upon completion of this course, students will be able to:
  • Describe and explain what robots are and what they can do
  • Describe mathematically the position and orientation of objects and how they move
  • Compute mobile robot kinematics
  • Develop a control architecture for a mobile robotic system
  • Implement navigation algorithms based on sensor fusion and environment representation
  • Write moderately involved programs in Python to control real-time tasks with a robotic system
  • Construct, program, and test the operation of a robotic system to perform a specified task.

There is no assigned textbook for this course, but the material covered in lectures has significant overlap with the following:

[1]. Introduction to Autonomous Mobile Robots, by R. Siegwart, I. Nourbakhsh, MIT Press, 2011. 

[2]. Robotics, Vision, and Control, by Peter Corke, Springer, 2011.

[3]. Mobile Robots: Navigation, Control, and Remote Sensing, by G. Cook, Wiley-IEEE Press, 2011.

All three books are available in digital form through online access at the Georgia Tech library.

Assignments and Grading
  • Labs (8% each): There will be 7 lab assignments throughout the semester, each worth 8% of the final grade. Lab 1 will be completed individually, and labs 2-7 in pairs. Lab grades will be determined using the grading rubric provided with each lab assignment, as well as through partner peer evaluation. Late Policy: All lab assignments are due at the time and date indicated on the assignment document. Up to two late days are allowed, but a grade penalty of 50% and 75% will be applied at the first and second day, respectively. For example, a 100-point lab completed one day late would only receive 50 points. Since almost all labs require a live demo for grading (usually done in class), please contact a TA well ahead of time to schedule a time to demo your solution if you are missing class or are making a late submission.

  • Quizzes (4.4% each): There will be 12 quizzes throughout the semester at the end of class on the dates designated on the syllabus. The two quizzes with the lowest grade will be dropped, and the remaining 10 quizzes are each worth 4.4% of your final course grade. Because the lowest quizzes are being dropped, we will not be rescheduling quizzes missed due to travel, job interviews, and minor illnesses. Special considerations will be made for serious or extended circumstances, please contact Dr. Reza Ahmadzadeh ahead of the quiz date to ask about special arrangements.

Extra Credit: 
You may earn extra credit throughout the semester through the following:
  • Make a particularly helpful or insightful Piazza post, which is endorsed by at least 3 course staff. [0.2% of total grade]
  • Contribute example code that does something new, interesting and/or useful, which is endorsed by at least 3 course staff. The code must be related to Cozmo or provide a tool usable in the course. It may be related to an assignment, but does not have to be. It must not provide a solution to an assignment. [0.5% of total grade]
  • Complete the CIOS survey at the end of class. Extra credit of 0.3% of total grade if at least 85% of the class completes the survey

Beginning with Lab 2, all lab assignments will be completed in pairs although each of you will receive a robot. This means that on September 12th (tentative), when you receive a Cozmo robot, you already need to have a partner. Partner arrangements are not fixed and can change throughout the semester. In fact, we encourage anyone not satisfied with their partner to find a new partner to work with.
In rare cases, we can facilitate partnering arrangements.

Cozmo Robots
Each of you will receive a Cozmo robot to use for the semester that you will return, with all accessories, at the end of the course. Each Cozmo will be numbered and we will keep track of who has which robot using this spreadsheet. At the end of the semester, you are responsible for returning the robot for which your name is listed. If for any reason you start using a new robot email one of the TAs and they will update the spreadsheet.

Communication with Course Staff and Peers
We will be using Piazza for course announcements, questions and discussion. Official copies of lab assignments will be available through both Piazza and T-Square. For the best and fastest response, we ask that you post your questions on Piazza instead of sending
an email. If others are likely to have a similar question or benefit from the answer, make a public Piazza post. Feel free to make private posts to the course staff if your question concerns a solution, your grade or other private information. You can also reach out to your group lead TA for questions, or reach all the course staff by emailing cs3630staff@lists.gatech.edu

We encourage everyone to actively contribute to discussions, answer each other’s questions and generally use Piazza as broadly as possible to make the course run smoothly. Cozmo is a new platform, with a frequently changing SDK, so please check Piazza regularly for updates. We recommend configuring the email settings to send new post notifications in real time, not at the end of the day.

Course Policies
The course schedule and policies mentioned in this syllabus may change at any time during the term, but all changes will be clearly documented and announced.

Student Disability Services 
If you need course adaptations or accommodations because of a disability, or if you have medical information to share with the instructor, please make an appointment or stop by to speak with Dr. Reza Ahmadzadeh within the first week of classes.

Academic Honesty Policy 
Review Georgia Tech’s Academic Honor Code

Rule of thumb 
Any work you present as your own should represent your own understanding of the material. When external sources were used as significant points of information (sample code, etc.), the source must be referenced in your submission.

In-class Demo
In this course, almost all labs require an in-class live demo for grading. Demo sessions are really fun and most of the time ignite detailed and in-depth discussions that are very helpful for both the students and the course staff. This is how an in-class demo day looks like:


Assignments, lectures, and ideas on this syllabus are partially adapted from Sonia Chernova's course at Georgia Institute of Technology. I would like to thank Sonia for helpful discussions and access to her course materials.