CS 440: Introduction to Artificial Intelligence (Spring 2026)
- Lectures
-
Tue/Thu, 5:40 - 7:00 PM
at RWH 105, Busch Campus
- Recitations
-
Sec 05: Tue 9:35 - 10:30 PM, Busch SEC 202 Michael Hyder (mkh134[at]scarletmail.rutgers.edu)
Sec 06: Thu 7:45 - 8:40 PM, Busch SEC 202 Yuhong Luo (y.luo[at]rutgers.edu)
Sec 07: Tue 7:45 - 8:40 PM, Busch SEC 205 Garrett Seo (gks43[at]scarletmail.rutgers.edu)
Sec 08: Tue 7:45 - 8:40 PM, Busch SEC 209 Yunran Yang (yy1008[at]scarletmail.rutgers.edu)
- Instructor
-
Xintong Wang (Email: firstname.lastname[at]rutgers.edu)
Please use email only for confidential matters and include “CS440” in the subject (e.g., [CS440] Your Subject). - TAs, Office Hours, Piazza
-
TAs: Michael Hyder, Yuhong Luo, Garrett Seo, Yunran Yang
Office hours:
Xintong: Mondays 4:15-5:15pm Core 319
Michael: Tuesdays 2:30-3:30 Core 448
Yuhong: Thursdays 4:30-5:30 Core 448
Yunran: Wednesdays 3:35-4:35 Core 448
Piazza: https://piazza.com/rutgers/spring2026/cs440sp26
This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. If you have any problems or feedback for the developers, email team@piazza.com.
Announcements
- Welcome to CS440! You can find the course info, syllabus, and announcements here.
- Jan 19: Please note that there will be no recitation this Tuesday, Jan 20 and this Thursday, Jan 22.
Course Overview
What do web search, AlphaGo, face recognition, machine translation, autonomous driving have in common? These are all complex real-world problems, and the goal of artificial intelligence (AI) is to tackle these with rigorous mathematical tools.
This course will introduce the basic ideas, foundational principles, and techniques underlying the design of intelligent computer systems.
Specific topics include search, game playing, Markov decision processes, constraint satisfaction, graphical models, and machine learning.
By the end of this course, you will have built autonomous agents that efficiently make decisions in fully informed, partially observable and adversarial settings. Your agents will draw inferences in uncertain environments and optimize actions for arbitrary reward structures. Your machine learning algorithms will classify handwritten digits and photographs. 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.
Prerequisites: This course assumes prior programming experience and fundamental knowledge of algorithm design, discrete math, and probability. This course will involve substantial elements of both programming and mathematics, which are central to modern AI. We will help with refreshing key concepts and techniques in recitations. However, you should be prepared to review basic probability, linear algebra, and calculus if needed. Homework 0 is designed to ensure you have the necessary mathematical background for the course.
Programming assignments will be in Python. We do not assume previous experience with the language, but we do expect you to learn the basics very rapidly. Project 0 is designed to walk you through the basics of Python, but if you want to get a head start here is a good tutorial.
Course Schedule (tentative)
| Date | Lectures | Readings | Recitations (Tue/Thu) | Dues |
|---|---|---|---|---|
| Tue 1/20 |
Introduction [slides] | Chap. 1 & 2 | No recitation | Class survey |
| Thu 1/22 |
[Search]: Problem solving as path finding... Uninformed Search [slides] (Tree search, BFS, DFS, uniform cost search) |
Chap. 3.1-3.4 | HW0 (self-evaluation, no need to submit) PA0: Python tutorial |
|
| Tue 1/27 |
Informed Search [slides] (A* search and heuristics) |
Chap. 3.5-3.6 | Recitation 1: Probability & discrete math review | |
Thu 1/29 |
[Markov Decision Processes]: Decision making in stochastic environments... Utility, MDP I [slides] (MDP, utility, policy evaluation) |
Chap. 17.1-17.3; RL Chap. 3 & 4 |
Last day to add/drop (Monday 2/2) PA1: Search (due 2/12 23:59pm on Canvas) |
|
| Tue 2/3 |
MDP II [slides] (policy evaluation, value iteration, policy iteration) |
Chap. 17.1-17.3; RL Chap. 3 & 4 | Recitation 2: Search [solution] | |
| Thu 2/5 |
Reinforcement Learning I [slides] (Framework, model-based vs. model-free, TD learning, Q-learning) |
Chap. 21.1-21.3; RL Chap. 5 & 6 | ||
| Tue 2/10 |
Reinforcement Learning II [slides] (Q-learning (cont.), exploration vs. exploitation, approximate-Q) |
Chap. 21.4-21.6; RL Chap. 9 | ||
Thu 2/12 |
[Game Playing]: Decision making in a multi-agent environment... Adversarial Games I [slides] (Adversarial search, Minimax) |
Chap. 5.1-5.3 | ||
Tue 2/17 |
Adversarial Games II [slides] (Minimax, expectimax, Alpha-beta pruning) |
Chap. 5.1-5.3 | ||
| Thu 2/19 |
Midterm 1 Review [slides] |
|||
| Tue 2/24 |
In-class Midterm 1 | |||
Thu 2/26 |
[Constraint satisfaction problem]: Problem solving as assigning variables under constraints... CSP I [slides] (Definition, types of CSP, backtracking, filtering) |
Chap. 6.1 | ||
Tue 3/3 |
CSP II [slides] (backtracking search, arc consistency, (nearly) tree structure) |
Chap. 6.2-5 | ||
Thu 3/5 |
[Bayesian networks]: Quantifying uncertainty and probabilistic reasoning... Probability [slides] (Notations, joint, marginal, and conditional probability distribution, probabilistic inference) |
Chap. 13.1-13.3 | ||
Tue 3/10 |
Bayesian networks I [slides] (Bayes rule, conditional independence, representations) |
Chap. 13.4-13.5 & 14.1-14.3 | ||
Thu 3/12 |
Bayesian networks II [slides] (Query independence) |
Chap. 14 | ||
| 3/17 & 3/19 | Spring Break |
|||
| Tue 3/24 |
Bayesian networks III [slides] (Inference) |
Chap. 14.3-14.4 | ||
Thu 3/26 |
Bayesian networks IV [slides] (Approximate inference with sampling) |
Chap. 14.5 | ||
Tue 3/31 |
[Machine Learning]: Learning from examples... Naive Bayes, supervised learning setup [slides] (Classification, train/test, overfitting) |
Chap. 13.5 & 18.2 | ||
Thu 4/2 |
Linear models [slides] (Perceptrons, SVM, train/test, overfitting) |
Chap. 18.6 & 18.9 | ||
Tue 4/7 |
Logistic regression & Gradient Descent [slides] |
Chap. 18.6 & 18.7 | ||
| Thu 4/9 |
Midterm 2 Review [slides] |
|||
| Tue 4/14 |
In-class Midterm 2 | |||
Thu 4/16 |
Neural Networks I [slides] (Representationability, forward pass) |
Chap. 18.7 | ||
Tue 4/21 |
Neural Networks II [slides] (Training, backprop) |
Chap. 18.7 | ||
Thu 4/23 |
Model Selection & Course Summary [slides] *Advanced topic I [slides] |
|||
Tue 4/28 |
*Advanced topic II [slides] |
|||
Thu 4/30 |
Final Exam Review [slides] |
Textbooks (for reference not required)
There is no required textbook for this class, and you should be able to learn from the lecture notes and homeworks. Slides will be posted after lectures. We will draw on the following books for some of the lectures:
- (Default) Russell and Norvig. Artificial Intelligence: A Modern Approach. A comprehensive reference for all the AI topics that we will cover.
- (RL) Sutton and Barto. Reinforcement Learning: An Introduction. Covers Markov decision processes and reinforcement learning. Available free online.
- (LFD) Yaser S. Abu-Mostafa, Malik Magdon-Ismail, Hsuan-Tien Lin. Learning From Data. Covers the basic theory, algorithms, and applications of machine learning.
Coursework and Policy
Grading
The course will include 4-5 (paired) programming assignments, 3-4 (individual) written homeworks, two midterms (only the higher score counts), and a final. Typically, each assignment/exam will include opportunities for extra credit. We will follow the grading scheme below:
- Programming assignments (25%): The programming assignments will ask you to implement key components of an algorithm, for example, in search, adversarial games, reinforcement learning, machine learning, etc. You can work in pairs, if you wish. More details on submission instructions to follow.
- Written homeworks (20%): There will be 3-4 problem sets, to complement the programming assignments and cover theoretical concepts discussed in lectures. The written assignments are individual. Homeworks should be written up clearly and succinctly. You are encouraged to use LaTeX to writeup your homeworks, but this is not a requirement.
- Midterms (25%): We will have two in-class midterms that will test your knowledge and problem-solving skills on selected lecture material. You cannot use any external aids except one double-sided page of notes. Your midterm grade will be based on your higher score. The tentative dates are 2/19 and 4/14.
- Final (30%, comprehensive): The final exam will take place during the final period and will test your knowledge and problem-solving skills on preceding lectures, projects, and homeworks. You cannot use any external aids except one double-sided page of notes. If you have a major conflict (e.g., an academic conference), submit a request to take it at another time once we confirm the final date and time.
- Participation (bonus 3%): Positive participation bonus will be given to students who actively participate in lectures and recitations and/or answer other students' questions on Piazza in a substantial and helpful way.
Late, regrade, makeup policy
The following policy applies except for institute-established illness or emergency, in that case please kindly provide any official approval. We offer the following policy to help you with any last minute delay or emergency, and it is your responsibility to keep track of the late days you've used over the course.- Grace period: You have seven late days in total that can be distributed among the written/programming assignments without penalty. For each written/programming assignment, we will allow a max of two late days (48 hours). In case that two members in a group have different numbers of days remaining in grace periods, we can only apply the lesser of the two.
- Late discount: After the grace period, we will subtract 33% for each day that is delayed further. No assignment will be accepted after that.
- Regrade: You may submit a regrade request within one week after the grades are released. This applies to all written/programming assignments and exams (except the final, for which we will need to meet Rutger's grading deadline). After that, all grades are final.
- Makeup final exam: To request a makeup final due to a major conflict, you must email the course staff at least two weeks before the exam. Please note that due to the large size of the class, we cannot ensure accommodation for alternate exams. If you miss an exam due to a documented extenuating circumstance, we may consider increasing the weight of the other exam or finding another solution at the instructor's discretion.
Collaboration policy and honor code
- You are free to form study groups and discuss homeworks and programming assignments, without sharing code or answers. You should write up homeworks and code independently, and you must acknowledge in your submission all the students (from other groups for coding assignments) you discussed with.
- You are responsible for the content of your writing, including its correctness and that it does not plagiarize other sources. If absolutely necessary to use other sources, cite any tools, web sources, papers, textbooks that you consulted.
- If you choose to work with another student on the programming assignment, you two should discuss and work on all the problems together.
- Please read this document for more information on academic integrity and student support.