CS4804 Fall 2021
This course will introduce the foundations of modern artificial intelligence (AI) and key ideas and techniques underlying the design of intelligent computer systems. It will focus on concepts that are not only important in the space of AI but are also practically useful in modern applications. We will practice effective methods of reasoning about AI problems, which will generalize beyond the specific topics we study in class. Topics include (but are not limited to) search, game playing, logic, machine learning, deep learning, natural language processing, robotics and image processing. The techniques you learn in this course apply to a wide variety of artificial intelligence problems and will serve as the foundation for further study in any application area you choose to pursue.
Class meets Tuesday and Thursday from 3:30 PM to 4:45 PM, MCB 113.
Masks may be reusable or homemade cloth masks, dust masks, or surgical masks and should fit close to the face to provide thorough filtration of breathed air. Face shields that are open around the sides do not satisfy this requirement and are currently not accepted as a viable alternative by the university (see: https://ready.vt.edu/faq.html).
If a student feels that they cannot wear a mask for health concerns and must use an alternative form of face covering such as a face shield, they should contact Services for Students with Disabilities to request an accommodation. No exceptions for masks will be provided unless there is an official accommodation notice provided by SSD to the instructor.
These requirements will not be waived. The instructor has the authority to terminate the class session early if the health and safety requirements are not maintained. Students who fail to follow the requirements will be reported to the Office of Student Conduct.
If a student will miss significant class activities because of the need to self-isolate, then the Dean of Students Office should be contacted for an official absence verification. Prolonged absences may be difficult to make-up. Students should consult with their advisor about possible options if too much course work is missed to feasibly make-up. As pandemic conditions continue to evolve through the semester, these requirements may need to change. The guidance posted by the university at VT Ready should represent the most up-to-date requirements of the university and should be checked periodically for changes.
10:00 AM - 12:00 PM
Shakiba, TA Office Hours
9:00 AM - 10:00 AM
Ying, TA Office Hours
2:00 PM – 3:00 PM
Instructor Office Hours, Zoom. Request an appointment
3:30 PM – 4:45 PM
Class, MCB 113.
9:00 AM - 10:00 AM
Ying, TA Office Hours
3:30 PM – 4:45 PM
Class, MCB 113.
The only official prerequisite is CS 3114 (Undergraduate Data Structures and Algorithms). You should be comfortable with discrete mathematics, basic probability and statistics, basic logic, computational complexity, data structures, and algorithm analysis. The homework assignments will include programming portions using Python.
Please speak with the instructor if you are concerned about your background.
|1||08/23-08/27||Overview of AI (pdf)
|Agents / Python & Projec 0 (pdf)
|Project 0: Tutorial|
Ch. 3.1-3.4 (pdf)
Ch. 3.5-3.6 (pdf)
|HW1 / Project 1: search|
|3||09/06-09/10||Game, Adversarial Search (pdf)
|Game, Expectimax, Utilities (pdf)
Ch. 5.5 & 16.1-16.3
|4||09/13-09/17||Constraint satisfaction problem (CSP) I (pdf)
|CSP II (pdf)
|HW2 / P2: Game|
|5||09/20-09/24||Propositional Logic (pdf)
|First-Order Logic (pdf)
Ch. 8 & 9
|6||09/27-10/01||Markov Decision Processes (MDP) (pdf)
|MDP / Reinforcement Learning (pdf)
Ch. 17-3-17.5 & 22.1
|HW3 / P3: Mini-Contest 1|
|7||10/04-10/08||Reinforcement Learning I (pdf)
|Reinforcement Learning II (pdf)
|8||10/11-10/15||Midterm review (pdf)
|Midterm Exam (3:30pm – 4:45pm)
Exam time 75 minutes.
|P4: Reinforcement Learning|
|9||10/18-10/22||Probability (pdf) / Bayesian Networks I (pdf)
|Bayesian Networks II (pdf)
|10||10/25-10/29||Decision Networks / HMMs (pdf)
Ch. 14.1-14.3 & 16.5-16.6
|Particle Filters (pdf)
|HW4, HW7 / P5: Ghostbusters|
|11||11/01-11/05||Machine Learning Fundamentals (pdf)
|Machine Learning II (pdf)
|HW5 / P7: Mini-Contest 2|
|12||11/08-11/12||Deep Learning Fundamentals (pdf)
|Neural Networks (pdf)
|HW6 / P6: Machine Learning|
|13||11/15-11/19||Deep Learning for Nature Language Processing (pdf)
Ch 23 & Ch. 24
|AI application & Research / The Ethics of AI (pdf)
TAs: Shakiba Davari & Ying Shen
|14||11/22-11/26||No class||No class||Thanksgiving Week|
|15||11/29-12/03|| Final review (pdf)
||The Future of AI (pdf)
|16||12/06-12/10||No class||No class (Reading day)||Office hours remain open|
|17||12/13-12/17||No class||No class||12/13 (Mon) Final Exam
10:05am – 12:05pm
Exam time 2 hours.
Mini-Contests are programming assignments which covers from homework assignments with more difficult scenarios. There is no single set solution, please bring your own creative ideas!
Requests for regrading due to grading errors must be submitted in writing to a TA within one week of the release of grades.
Homework & project assignment submitted late without permission will be penalized according to the following formula:
(Penalized score) = (Your raw score) * (1 - 0.1 * (# of days past deadline))
This formula will apply for up to three days, after which the homework will not be accepted and you will receive a grade of zero. Avoid invoking these penalties by starting early and seeking extra help.
Based on the grading breakdown above, each student's final grade for the course will be determined by the final percentage of points earned. The grade ranges are as follows:
The Undergraduate Honor Code pledge that each member of the university community agrees to abide by states: "As a Hokie, I will conduct myself with honor and integrity at all times. I will not lie, cheat, or steal, nor will I accept the actions of those who do."
Students enrolled in this course are responsible for abiding by the Honor Code. A student who has doubts about how the Honor Code applies to any assignment is responsible for obtaining specific guidance from the course instructor before submitting the assignment for evaluation. Ignorance of the rules does not exclude any member of the University community from the requirements and expectations of the Honor Code. For additional information about the Honor Code, please visit: https://www.honorsystem.vt.edu/
This course will have a zero-tolerance philosophy regarding plagiarism or other forms of cheating. Your assignments must be your own work, and any external source of code, ideas, or language must be cited to give credit to the original source. I will not hesitate to report incidents of academic dishonesty to the Office of the Undergraduate Honor System.
Because the course will include in-class discussions, we will adhere to Virginia Tech's Principles of Community. The first two principles are most relevant:
The remaining principles are also important and we will take them seriously as a class.
Faculty Handbook Section 9.9: Classroom Conduct describes the responsibility of an instructor (any faculty rank or graduate teaching assistant) to maintain a positive learning environment. It states that, “Maintaining a good learning environment in the classroom is an important part of a faculty member’s responsibility as a teacher. Disruptive classroom conduct on the part of some students may be distracting, annoying, or intimidating to other students, and should not be tolerated by the teacher.”
These obligations include upholding the university’s guidance for health and safety protocolunder the conditions of COVID-19, including the updated masking guidelines for indoor spaces. Faculty should follow current University and Public Health Guidelines on the Virginia Tech Ready website.
Classroom behavior expectations for students should be clearly stated in the course syllabus. All instructors should include, at a minimum, a statement upholding the university’s Well-Being Commitment. The syllabus may include additional specific expectations such as the requirement for wearing a mask or face shield, or following posted classroom entry and exit protocols. Faculty should consult with their department head for guidance appropriate to the learning environments in which they will teach.