OMS CS7637: Knowledge-Based AI – Fall 2019

This page provides information about the Georgia Tech OMS CS7637 class on Knowledge-Based AI relevant only to the Fall 2019 semester. Note that this page is subject to change at any time. The Fall 2019 semester of the OMS CS7637 class will begin on August 19, 2019. Below, find the course’s calendar, grading criteria, and other information. For more complete information about the course’s requirements and learning objectives, please see the general CS7637 page.

Quick Links

To help with navigation, here are some of the links you’ll be using frequently in this course:

Course Calendar At-A-Glance

Below is the calendar for the Fall 2019 OMS CS7637 class. Note that assignment due dates are all Sundays at 11:59PM Anywhere on Earth time.

Week # Week Of Lessons Deliverable Assignment Due Date
1 08/19/2019 01, 02 Introductions, Start-of-Course Survey 08/25/2019
2 08/26/2019 03, 04 09/01/2019
3 09/02/2019 05, 06 Homework 1 09/08/2019
4 09/09/2019 07, 08 Peer Feedback 09/15/2019
5 09/16/2019 09 Project 1, Quarter-Course Survey 09/22/2019
6 09/23/2019 10, 11 Exam 1, Peer Feedback 09/29/2019
7 09/30/2019 12 10/06/2019
8 10/07/2019 13, 14 Homework 2 10/13/2019
9 10/14/2019 15, 16 Peer Feedback, Mid-Course Survey 10/20/2019
10 10/21/2019 17, 18 Project 2 10/27/2019
11 10/28/2019 19, 20 Exam 2, Peer Feedback 11/03/2019
12 11/04/2019 21, 22 11/10/2019
13 11/11/2019 23, 24 Homework 3 11/17/2019
14 11/18/2019 25 Peer Feedback 11/24/2019
15 11/25/2019 Project 3 12/01/2019
16 12/02/2019 Exam 3, Peer Feedback 12/08/2019
17 12/09/2019 26 End-of-Course Survey, CIOS Survey 12/15/2019

Given above are the numeric labels for each lesson. For reference, here are those lessons’ titles, with the estimated time to complete each lesson in minutes in parentheses:

  • 01: Introduction to Knowledge-Based AI (45)
  • 02: Introduction to CS7637 (60)
  • 03: Semantic Networks (60)
  • 04: Generate & Test (30)
  • 05: Means-Ends Analysis (60)
  • 06: Production Systems (60)
  • 07: Frames (45)
  • 08: Learning by Recording Cases (30)
  • 09: Case-Based Reasoning (60)
  • 10: Incremental Concept Learning (60)
  • 11: Classification (45)
  • 12: Logic (90)
  • 13: Planning (75)
  • 14: Understanding (30)
  • 15: Commonsense Reasoning (60)
  • 16: Scripts (30)
  • 17: Explanation-Based Learning (45)
  • 18: Analogical Reasoning (60)
  • 19: Version Spaces (60)
  • 20: Constraint Propagation (45)
  • 21: Configuration (45)
  • 22: Diagnosis (45)
  • 23: Learning by Correcting Mistakes (45)
  • 24: Meta-Reasoning (30)
  • 25: Advanced Topics (60)
  • 26: Wrap-Up (30)

Course Assessments

Your grade in this class is generally made of four components: three homework assignments, three projects, three exams, and class participation.

Final grades will be calculated as an average of all individual grade components, weighted according to the percentages below. Students receiving a final average of 90 or above will receive an A; of 80 to 90 will receive a B; of 70 to 80 will receive a C; of 60 to 70 will receive a D; and of below 60 will receive an F. We do not plan to have a curve. It is intentionally possible for every student in the class to receive an A.

Homework (30%)

You will complete three homework assignments in this course, each worth 10% of your average. Each homework assignment will have four questions, which you will answer in around three pages each. These questions will cover the course material, the ethics of AI, and the depiction of AI in the media. You will be expected to do some outside research for some of these questions. All assignments should be written using JDF.

Projects (45%)

You will complete three projects in this course, each worth 15% of your average. Each project has two components: an implementation portion and a reflection portion. The implementation portion will be graded on the quality of your project’s execution and its performance according to some benchmarks or objective evaluations. The reflection portion will be graded based on your presentation of your work and how it operates, as well how well you tie your implementation to human cognition. These reflections should be written using JDF.

Exams (15%)

You will take three proctored exams in this class, each worth 5% of your average. Each exam is one hour long with up to 15 questions, all multiple-choice, multiple-correct with five choices and between 1 and 4 correct answers. Partial credit is awarded. Each exam will cover all lectures through the previous week (for example, Exam 1 covers lessons 01 through 09). All exams are open-book, open-note, open-internet: everything except live interaction with another person. The tests are proctored via Proctortrack.

Class Participation (10%)

One of the major strengths of large online classes it the way they allow students to have significant impact on their classmates’ experiences. As such, 10% of your class grade and 10% of the time you spend on this class will be improving the course experience for other students. This is participation credit, and it can be earned in various ways, including forum participation, peer review, and course survey completion. This is designed such that you can earn your full participation credit through peer review and course surveys alone, but if you are comfortable participating in other ways, it will count in your favor as well.

Course Policies

The following policies are binding for this course.

Official Course Communication

You are responsible for knowing the following information:

  1. Anything posted to this syllabus (including the pages linked from here, such as the general course landing page).
  2. Anything emailed directly to you by the teaching team (including announcements via Piazza), 24 hours after receiving such an email.

Because Piazza announcements are emailed to you as well, you need only to check your Georgia Tech email once every 24 hours to remain up-to-date on new information during the semester. Georgia Tech generally recommends students to check their Georgia Tech email once every 24 hours. So, if an announcement or message is time sensitive, you will not be responsible for the contents of the announcement until 24 hours after it has been sent.

We generally prefer to handle communication via Piazza to help with collaboration among the teaching team, but we understand Piazza is not ideal for having information “pushed” to you. We may contact you via a private Piazza post instead of an email, but if we do so, we will choose to send email notifications immediately, bypassing your individual settings, in order to ensure you’re alerted. As such, this type of communication will also spring under #2 above.

Note that this means you won’t be responsible for knowing information communicated in several other methods we’ll be using. You aren’t responsible for knowing anything posted to Piazza that isn’t linked from an official announcement. You aren’t responsible for anything said in Slack or other third-party sites we may sometimes use to communicate with students. You don’t need to worry about missing critical information so long as you keep up with your email and understand the documents on this web site. This also applies in reverse: we do not monitor or Canvas message boxes and we may not respond to direct emails. If you need to get in touch with the course staff, please post privately to Piazza (either to all Instructors or to an instructor individually) or tag the instructor in the relevant post.

Office Hours

This class uses the chat tool Slack for its office hours. Slack is a popular team communication chat tool that allows conversations in public rooms, private rooms, and private messages. You can sign up for the student Slack community at Slack office hours are not scheduled at specific times; instead, the instructor is usually available on Slack throughout the day and responds quickly. In general, you may ask questions in the public #office-hours room, or message him directly. When necessary, Webex, BlueJeans, or other forms of conversation can be launched from within Slack. If you are not comfortable signing up for Slack to participate in Slack office hours, you may also feel free to email or post privately on Piazza to set up a chat via an alternate technology.

Late Work

Running such a large class involves a detailed workflow for assigning assignments to graders, grading those assignments, and returning those grades. As such, work that does not enter into that workflow presents a major delay. Thus, we cannot accept any late work in this class. All assignments must be submitted by the posted deadlines. We have made the descriptions of all assignments available on the first day of class so that if there are expected interruptions (business trips, family vacations, etc.), you can complete the work ahead of time.

If you have technical difficulties submitting the assignment to Canvas, post privately to Piazza immediately and attach your submission. Then, submit it to Canvas as soon as you can thereafter.

If you have an emergency and absolutely cannot submit an assignment by the posted deadlines, we ask you to go through the Dean of Students’ office regarding class absences. The Dean of Students is equipped to address emergencies that we lack the resources to address. Additionally, the Dean of Students office can coordinate with you and alert all your classes together instead of requiring you to contact each professor individually. You may find information on contacting the Dean of Students with regard to personal emergencies here:

The Dean of Students is there to be an advocate and partner for you when you’re in a crisis; we wholeheartedly recommend taking advantage of this resource if you are in need. Justifiable excuses here would involve any major unforeseen disruption to your classwork, such as illnesses, injuries, deaths, and births, all for either you or your family. Note that for foreseen but unavoidable conflicts, like weddings, business trips, and conferences, you should complete your work in advance; this is why we have made sure to provide all assignment and project resources in advance. If you have such a conflict specifically with the tests, let us know and we’ll try to work with you.

Academic Honesty

All students in the class are expected to know and abide by the Georgia Tech Academic Honor Code. Specifically for us, the following academic honesty policies are binding for this class:

  • In written essays, all sources are expected to be cited according to APA style, both in-line with quotation marks and at the end of the document. You should consult the Purdue OWL Research and Citation Resources for proper citation practices, especially the following pages: Quoting, Paraphrasing, and Summarizing, Paraphrasing, Avoiding Plagiarism Overview, Is It Plagiarism?, and Safe Practices. You should also consult our dedicated pages on how to use citations and how to avoid plagiarism.
  • Any non-original figures must similarly be cited. If you borrow an existing figure and modify it, you must still cite the original figure. It must be obvious what portion of your submission is your own creation.
  • In written essays, you may not copy any content from any current or previous student in this class, regardless of whether you cite it or not.
  • You may not under any circumstances copy any code from any current or former student in the class or any project addressing Raven’s Progressive Matrices.
  • The only code segments you are permitted to borrow are isolated project-agnostic functions, meaning functions who serve a purpose that makes sense outside the context of our projects (such as, for example, inverting colors in an image). Include a link to the original source of the code and clearly note where the copied code begins and ends (for example, with /* BEGIN CODE FROM (source link) */ before and /* END CODE FROM (source link) */ after the copied code). This is partially to emphasize what your unique project and deliverable is, and partially to protect against instances where you and a classmate both borrowed a function from the same external repository.
  • During exams, you are prohibited from interacting directly with any other person on the topic of the exam material. This includes posting on forums, sending emails or text messages, talking in person or on the phone, or any other mechanism that would allow you to receive live input from another person.

There is one exception to these policies: unless you are quoting the course videos directly, you are not required to cite content borrowed from the course itself (such as figures in videos, topics in the video, etc.). The assumption is that the reader knows what you write is based on your participation in this class, thus references to course material are not inferred to be claiming credit for the course content itself.

These policies, including the rules on all pages linked in this section, are binding for the class. Any violations of this policy will be subject to the institute’s Academic Integrity procedures, which may include a 0 grade on assignments found to contain violations; additional grade penalties; and academic probation or dismissal.

Note that if you are accused of academic misconduct, you are not permitted to withdraw from the class until the accusation is resolved; if you are found to have participated in misconduct, you will not be allowed to withdraw for the duration of the semester. If you do so anyway, you will be forcibly re-enrolled without any opportunity to make up work you may have missed while illegally withdrawn.


Every semester, we make changes and tweaks to the course formula. As a result, every semester we try some new things, and some of these things may not work. We ask your patience and support as we figure things out, and in return, we promise that we, too, will be fair and understanding, especially with anything that might impact your grade or performance in the class. Second, we want to consistently get feedback on how we can improve and expand the course for future iterations. You can take advantage of the feedback box on Piazza (especially if you want to gather input from others in the class), give us feedback on the surveys, or contact us directly via private Piazza messages.