Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

CS 7638 Artificial Intelligence for Robotics

Spring 2023

Course Syllabus

Introduction

In this course, you will learn how to program all the major systems of a robotic car based on lectures from the former leader of Google’s and Stanford's autonomous driving teams, Sebastian Thrun. You   will learn some of the basic techniques in artificial intelligence, including probabilistic inference,     planning and search algorithms, localization, tracking, and PID control, all with a focus on robotics.  Extensive programming examples and assignments in Python will apply these methods in the context of autonomous vehicles.

Learning objectives

Upon successfully completing this course, you will be able to:

•   Implement filters (including Kalman and particle filters) in order to localize moving objects whose locations are subject to noise.

•   Implement search algorithms (including A*) to plan the shortest path from one point to another subject to costs on different types of movement.

•   Implement PID controls to smoothly correct an autonomous robot’s course.

•   Implement a SLAM algorithm for a robot moving in at least two dimensions.

Prerequisites

Success in this course requires programming experience and some mathematical fluency. Programming in this course is done in Python 3. We will use some basic object-oriented concepts to model robot motion and perception. If you don’t know Python but have experience with another language, you should be able to pick up the syntax fairly quickly but must budget extra time for learning a new programming language. If you are NOT fluent in some programming language already, learning python and coding the projects will be extremely time consuming. The math used will primarily be probability and linear algebra. You need not be an expert in either, but some familiarity with concepts in probability (e.g., that probabilities must add up to one, the definition of conditional probability, and Bayes’rule) will be extremely helpful and reduce the amount of time you will need to spend (re)learning the mathematical underpinnings.

Dramatis personæ

Course Creator: Dr. Sebastian Thrun

Instructor of Record: Dr. Jay Summet <[email protected]>

Materials & Websites

There are no required texts for this course; however, a supplementary reading you may find very  helpful is Probabilistic Robotics by Wolfram Burgard, Dieter Fox, and Sebastian Thrun. The book provides much of the math and the derivations omitted in Sebastian’s lectures.

http://probabilistic-robotics.org/

Canvas is the primary website you will be using for this course ( https://gatech.instructure.com/ ). Lectures and problem sets will be accessed via Canvas in the Modules and Assignments pages    respectively. There is also an older version of the course available for free on the Udacity website which you can find at the direct URL:

https://classroom.udacity.com/courses/cs373

You must submit projects and problem sets using the Gradescope tool linked in Canvas. Please refer to the course policy guidelines document for further details. Official course announcements will be sent  via the“Announcements”tool in Canvas, and will be archived there for viewing. (Replies to announcements and assignments may not be seen, please use EdDiscussion for communication purposes.)

All course communication including public questions about content and private questions about individual grades will be handled via the EdDiscussion website. You will be automatically enrolled in  EdDiscussion using your GaTech Official login. EdDiscussion is linked from Canvas. Clarifications to course policies and project specifications may also be discussed on EdDiscussion so it is vital that you maintain awareness of the question & answer content. See the“Using Discussions”in the course policy guidelines document posted on Canvas for more details.

Note that, because we use automated tools to grade your assignments, comments posted to assignments in Canvas or Gradescope are not seen. All regrade requests must be handled via a private post on

EdDiscussion.

Office Hours

We will hold online office hour sessions throughout the semester using the Zoom video conference tool. We will post the office hours schedule on EdDiscussion. The sessions may be viewed live, or you may watch the recordings after the fact. Please submit your questions in advance by posting them in the designated EdDiscussion thread beforehand, or you may ask questions“live”after we answer the pre-posted questions.

Privacy Notice: If you join the live office hour video chat, your voice, image and username will be      visible to all other students in the course. You may choose to not turn on video when asking your (audio only) question, but if you do not wish for your voice to be heard, you should ask your questions via the EdDiscussion thread before the video office hour or via the Zoom chat feature.

Academic Integrity Policy

Georgia Tech aims to cultivate a community based on trust, academic integrity, and honor. Students are expected to act according to the highest ethical standards. For information on Georgia Tech's Academic Honor Code, please visit http://www.catalog.gatech.edu/policies/honor-code/ or http://www.catalog.gatech.edu/rules/18/.

We will report all incidents of suspected dishonesty to the Office of Student Integrity (OSI). Please refer to the course policy & guidelines document for further details. We actively scan project submissions with automated means to detect cases of plagiarism or unauthorized collaboration.

Lecture Viewing Schedule

You are free to view the video lectures on Canvas at any time. We recommend that you view each video lesson before you complete the associated problem set (PS). By following this recommendation, you will have viewed the material needed for each of the projects that are due after the PS. (For example, the Kalman filter project will require material from Lessons 1 and 2, while the Particle Filter project will require material from Lesson 3 – Particle Filters.)

We have set up the PS deadlines so that you will complete the video lectures in the first two thirds of the course, leaving time to complete the last two projects at the end of the semester. Note that unlike  the problem sets, the projects may be extremely time consuming, so you should start them as soon as they are posted. In many cases you may be working on more than one project or problem set simultaneously.

Important Dates & Deadlines

•    Monday, Jan 9th,  2023

•    Friday, Jan 13th

•    Monday, Jan 16th

First Day of Class

Registration/Schedule change period ends (4pm ET)

Institute Holiday (MLK Jr.)

•    Tuesday, Jan 17th                              11:59pm AOE* - Problem Set 0 & Syllabus Quiz Due

(Problem set 0 is ungraded, but strongly encouraged as a way to practice a Gradescope submission, review python basics you will need to know, and ensure your local development environment is set up correctly.)

    Monday, Jan 23rd

11:59pm AOE  - Problem Set 1 Due

    Monday, Jan 30th

11:59pm AOE - Problem Set 2 Due

   Monday Feb 6th

11:59pm AOE - Kalman Filter Project Due

   Monday Feb 13th

11:59pm AOE - Problem Set 3 Due

    Monday, Feb 20th

11:59pm AOE - Problem Set 4 Due

   Monday, Feb 27th

11:59pm AOE - Particle Filter Project Due

•    Midterm Exam Period:      Friday/Saturday/Sunday  - March 3rd, 4th, 5th 11:59pm AOE Thursday through 11:59pm AOE Sunday

(Covering Localization, Kalman Filters, Particle Filters and Bicycle Motion)

    Wednesday, March 8th

11:59pm AOE - Problem Set 5 Due

•    Monday March 13th

11:59pm AOE – PID Project Due

    Wednesday, March 15th

Institute Withdraw Deadline (4pm ET).

   March 20th-24th

Spring Break

•   Monday, March 27th

11:59pm AOE - Problem Set 6 Due

   Monday, April 3rd

11:59pm AOE - Search Project Due

    Monday, April 24th

11:59pm AOE -  SLAM Project Due

•    Final Exam Period:            Friday/Saturday/Sunday  April 28th, 29th, 30th 11:59pm AOE Thursday through 11:59pm AOE Sunday

(Comprehensive, covering all course material)

* 11:59pm AOE = 11:59pm Anywhere On Earth – You may read this as 7:59am ET on the following    day, but we recommend that you always plan to submit well before end of day your local time to ensure you meet the deadline. You may need to change your Canvas“timezone”settings to your local timezone to avoid timezone confusion.

Grading Policy

Your overall course grade will be calculated from your weighted scores on the following deliverable items:

•    6 problem sets and a Syllabus Quiz (20% total) (Problem set 0 is ungraded and for practice only.)

•    PID Project (8%)

•    Kalman Filter, Particle Filter, and SLAM Projects (13% each)

•    Search Project ( 18%)

•    Midterm (15 pts) & Final Exam (30pts)  (15% total)

•   Extra Credit Opportunities: Worried you might end up right below a grade cutoff line? You can earn a small amount of extra credit in several ways, including:

◦  Participating in optional hardware & research challenge assignments.

◦  Exceptional participation and helpfulness on EdDiscussion throughout the semester.

Extra credit will be taken into consideration at the end of the semester if you are within two points of the threshold for the next higher letter grade. The maximum possible bump is 2% of  your total course grade. Note that to achieve the maximum possible (2%) bump, you will need to do either all the hardware challenges OR all of the research challenges, as well as some EdDiscussion Participation. Alternatively, you can do ½ of the hardware challenges AND ½ of the research challenges as well as some EdDiscussion Participation to receive the full credit.

Assignments and Problem Sets are posted in Canvas using the Assignments tool, but you will submit  all work using the Gradescope online-autograder tool (linked from Canvas). See the course guidelines document for more details. Note that you will receive no credit or grade for any work submitted to the free Udacity course.

We will post grades using the Grades tool in Canvas. We will do our best to return grades to you as quickly as possible. We ask that if you have a concern about a grade received to please notify us via a private post on EdDiscussion within one week of receipt.

The minimum required percentage scores (we do NOT round up) for course letter grades are:

•   A: 90.00%

•   B: 80.00%

    C: 70.00%

•   D: 60.00%

If circumstances warrant, the instructor may lower these grade cutoffs (that is, make them more favorable to your grade) at the end of the semester, although we typically do not need to do this.

Disability Services

If you are a student with learning needs that require special accommodation, contact the Office of Disability Services at (404) 894-2563 or http://disabilityservices.gatech.edu/, as soon as possible to make an appointment to discuss your special needs and to obtain an accommodations letter.

Ask Disability Services to forward the instructor a letter specifying the accommodations you should receive. Do this as soon as possible, as it can take up to 15 business days for the office to process your initial application.

Student-Faculty Expectations Agreement

At Georgia Tech we believe that it is important to strive for an atmosphere of mutual respect, acknowledgment, and responsibility between faculty members and the student body. See this catalopage for an articulation of some basic expectation that you can have of me and that I have of you. In the end, simple respect for knowledge, hard work, and cordial interactions will help build the environment we seek. Therefore, I encourage you to remain committed to the ideals of Georgia Tech while in this class.

Statement of Intent for Inclusivity

As a member of the Georgia Tech community, I am committed to creating a learning environment in  which all of my students feel safe and included. Because we are individuals with varying needs, I am reliant on your feedback to achieve this goal. To that end, I invite you to enter into dialogue with me  about the things I can stop, start, and continue doing to make my classroom an environment in which every student feels valued and can engage actively in our learning community.

Online Grading

Using the Gradescope autograder you may submit your work“on-line”at any time before the deadline to have them automatically graded before the due date.

The grade you receive via the“online”autograder is a good indication of the performance of your code, but we reserve the right to re-grade your project using a new set of test cases after the deadline. Note that this new set of test cases may increase or decrease your final grade on that project. The same set of test cases will be used for all students. If you fail to submit to Gradescope/Canvas before the deadline it is very likely you will receive a zero.